Author: admin

PostgreSQL数据库介绍,为什么使用PostgreSQL

什么是 PostgreSQL?

PostgreSQL 是一个功能强大的开源对象关系数据库系统,它使用并扩展了 SQL 语言,并结合了许多功能,可以安全地存储和扩展最复杂的数据工作负载。PostgreSQL 的起源可以追溯到 1986 年,作为加州大学伯克利分校POSTGRES项目的一部分,并且在核心平台上拥有超过 35 年的积极开发经验。

PostgreSQL 因其经过验证的架构、可靠性、数据完整性、强大的功能集、可扩展性以及软件背后的开源社区始终如一地提供高性能和创新解决方案的奉献精神而赢得了良好的声誉。PostgreSQL 可在所有主要操作系统上运行,自 2001 年以来一直符合ACID,并且具有强大的附加组件,例如流行的PostGIS地理空间数据库扩展器。毫不奇怪,PostgreSQL 已成为许多人和组织选择的开源关系数据库。

《高并发的哲学原理》开源图书

https://github.com/johnlui/PPHC

 

阅读地址:https://pphc.lvwenhan.com

pdf 下载链接在网站右上角。

写作目标

本书的目标是在作者有限的认知范围内,讨论一下高并发问题背后隐藏的一个哲学原理——找出单点,进行拆分。

内容梗概

我们将从动静分离讲起,一步步深入 ApacheNginx、epoll、虚拟机、k8s、异步非阻塞、协程、应用网关、L4/L7 负载均衡器、路由器(网关)、交换机、LVS、软件定义网络(SDN)、Keepalived、DPDK、ECMP、全冗余架构、用户态网卡、集中式存储、分布式存储、PCIe 5.0、全村的希望 CXL、InnoDB 三级索引、内存缓存、KV 数据库、列存储、内存数据库、Shared-Nothing、计算存储分离、Paxos、微服务架构、削峰、基于地理位置拆分、高可用等等等等。并最终基于地球和人类社会的基本属性,设计出可以服务地球全体人类的高并发架构。

全书共有 12 章,83 篇文章,总计 167547 字。

唱衰 PHP?这些言论别太离谱~《PHP 综合现状分析报告》来了

PHP 这门有着近三十年历史的编程语言曾几度被唱衰,“PHP 将亡” 的言论伴随着 “PHP 是最好的语言” 的黑色幽默,多年来屡见不鲜。

那 PHP 的现状究竟如何?

为拨开 PHP 语言周遭的层层迷雾,禅道项目管理软件团队从近两年各方发布的 PHP 应用现状报告、2023 年 PHP 最新动态以及对 PHP 社区用户的深入访谈等维度出发,整理编辑出了一份全面、真实、客观的《2022-2023 年度 PHP 综合现状分析报告》。希望这份报告能帮助行业从业者更好地理解 PHP 语言的现状与趋势,为相关决策提供参考依据。…

Maven详细简介

1.maven简介
1.1 简介
        maven 最主要体现在两个词上:项目和管理。maven给我们整个开发团队找出了一种能够更加科学的去管理我们项目的思想。maven通过使用配置文件的方式使得项目在管理和交接的过程中成本变得非常低。maven提出了一种叫做maven仓库的概念,使得我们可以将第三方和我们需要引用的项目都放置在maven仓库当中。如果其他人或项目组也需要使用,就可以直接通过maven进行配置就行。这样就可以将人员成本、沟通成本等等都进行降低。
        如果还不理解我们举个例子:加入我们现在想做一份菜:糖醋排骨。如果我们想要做这道菜,那么我们首先要先去菜市场买排骨、糖、醋、......,而且在做的时候还要注意使用糖醋的用量等等。那么如果有一个超市,该超市有卖糖醋排骨的料理包,这是不是就能很大的节省我们做饭和买菜的时间开销。其实maven就是这个卖料理包的超市,当人卖的不是料理包,而是一系列的jar包。这样我们在写代码的时候就不需要去其他网站上下载一大堆的jar包。
1.2 项目构建
       不知道大家有没有意识到,构建(build)是每一个程序员都在做的工作。仔细观察我们会发现,除了编写代码,我们每天都有相当一部分时间花在了编译,运行单元测试,生成文档、打包和部署等繁琐和不起眼的工作上,这就是构建。如果我们现在还是手工的做这些事情,那么时间成本就太高了,于是有人用软件的方法让这一系列工作完全自动化。是软件构建完全像流水线一样,只需要一条简单的命令,所有繁琐的步骤就能很快的自动完成。
1.3 项目构建工具
Ant构建
       最早的构建工具,基于IDE,大概是2000年有的,当时最流行的java构建工具,不过他的xml脚本编写风格让xml文件特别大。对工程构建过程中的过程控制的特别好。
Maven [ java ]
        Maven是一个项目管理和整合工具。Maven为开发者提供了一整套完整的生命周期框架。开发团队几乎不用花多长时间就能够自动完成工程的基础构建配置。他填补了Ant的缺点,Maven第一次支持了从网上下载的功能,仍然采用xml作为配置文件格式Maven专注的是项目依赖,使用java编写。
Gradle
       属于结合以上两个的优势,他继承了Ant的灵活和Maven的生命周期管理,他最终被google作为了Android御用管理工具。他最大的区别是不用XML作为配置文件格式,采用了DSL格式,使得脚本更加简洁。
        目前市面上Ant比较老,所以一般是一些比较传统的软件企业公司使用,Maven使用java编写,是当下大多数互联网公司使用的一种构建工具,中文文档也比较齐全,gradle是用groovy编写,目前比较新的构建工具一些初创互联网公司会使用,以后会有很大的使用空间。
1.4 Maven的四大特征
1.4.1 依赖管理系统
       Maven为java世界引入了一个新的依赖管理系统jar包管理 jar包升级时修改配置文件即可。在java世界中,可以用gropId、artifactId、version组成Coordination(坐标)唯一标识一个依赖。
      任何基于maven构建的项目自身也必须定义这三个属性。
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.4.5</version>
</dependency>
坐标属性的理解
    Maven坐标为各个组件引入了新秩序,任何一个组件都必须明确定义自己的坐标。
groupId
       定义当前Maven项目隶属的实际项目-公司名称。(jar包所在仓库路径)由于maven中模块的概念,因此一个项目实际往往会被分成多个模块。比如Spring是一个实际的项目,其对应的Maven模块会有很多,比如Spring-croe,spring-webmvc等。
artifactid

唱衰这么多年,PHP 仍然还是你大爷!

PHP 是个庞然大物。

尽管有人不断宣称 PHP “即将消亡”。

但无法改变的事实是:互联网依然大量依赖 PHP。本文将通过大量的数据和事实告诉你为何 PHP 仍然在统治着互联网,你大爷仍然还是你大爷

统计数据

PHP 仍然是首选编程语言

根据 W3 Techs 对全球前 1000 万个网站使用的编程语言分析,我们可以看到:

  • PHP 占比 77.2%
  • ASP 占比 6.9%
  • Ruby 占比 5.4%

基于 PHP 的内容管理框架

绝大多数公共网站都是通过 PHP 和 CMS 来构建的。根据市场份额,12 大 CMS

Linux Kernel Linux 内核项目是什么

软件简介

Linux 是最受欢迎的自由电脑操作系统内核。它是一个用 C 语言写成,符合 POSIX 标准的类 Unix 操作系统。Linux 最早是由芬兰黑客林纳斯・托瓦茲为尝试在英特尔 x86 架构上提供自由免费的类 Unix 操作系统而开发的。该计划开始于 1991 年,这里有一份林纳斯・托瓦茲当时在 Usenet 新闻组 comp.os.minix 所登载的帖子,这份著名的帖子标志着 Linux 计划的正式开始。

在计划的早期有一些 Minix 黑客提供了协助,而今天全球无数程序员正在为该计划无偿提供帮助。

技术上说 Linux 是一个内核 kernel。“内核” 指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。一套基于 Linux 内核的完整操作系统叫作 Linux 操作系统,或是 GNU/Linux。

Linux 是一个宏内核(monolithic kernel)系统。设备驱动程序可以完全访问硬件。Linux 内的设备驱动程序可以方便地以模块化(modularize)的形式设置,并在系统运行期间可直接装载或卸载。

MATLAB是什么

MATLAB  是一个用于科学研究与工程应用分析和设计的商业化算术运算软件,由美国新墨西哥大学的数学教授 Cleve Moler 开发。

Moler 当时在美国阿贡国家实验室(Argonne National Laboratory)参与了两个数值计算软件包的开发:用于求取矩阵特征值的 EISPACK 和用于求解线性系统的 LINPACK。同时,他也在新墨西哥大学讲授数值分析和矩阵论的课程。为了让学生们既能够在计算机上进行实践,又能免除编写程序的麻烦,Moler 利用 FORTRAN 语言和 EISPACK 及 LINPACK 的部分功能,编写了最初版本的 MATLAB。…

一篇文章告诉你公网,私网,内网,外网的区别

最近经常有很多小白朋友在后台问,公网、私网、内网、外网,这些的概念是啥样的,又该怎么去界定。

关于IP地址,确实没有太明确的区分,其实也不必太过咬文嚼字。

内网、外网就是一个参考系选择的结果。

毕竟对你而言是外网,其实是别人的内网,,各有各的定义,最多只能具体问题具体分析。

不过在一般情况下,还是可以区分的。…

MoJo:比Python快35000倍的全新编程语言!

  

Chris Lattner ,这个神一样的男人,他又干了件惊天动地的大事!

他官宣发布全新编程语言——Mojo

MoJo:比Python快35000倍的全新编程语言!

大神何许人也

对于全球各地开发者来说,Chris Lattner 是一个大家都仰望的男人!

他曾是许多大型技术项目的领导者,包括 LLVM 编译器基础结构项目、Clang C 和 C++ 编译器、MLIR 机器学习基础结构等编译器技术,以及为苹果生态系统提供支持的程序设计语言 Swift

他的履历可谓相当精彩:

  • 2011-2017 年,任苹果开发部高级总监、架构师

  • 2017.1-2017.6,任特斯拉副总裁,负责自动驾驶

  • 2017.8-2020.1,任谷歌 Google Brain 高级总监

  • 2020.1,加入芯片创业公司 SiFive 负责平台工程

在去年,他终于下定决心自己创业,和 Tim Davis 共同建立了「Modular AI」,希望自下而上重建全球 ML 基础设施。

Mojo 就是他们公司发布的新编程语言。