liu 发布的文章

电脑上的文件压缩包我们在平时都有使用过的一个东西,通过打包压缩,可以减少文件体积,对文件加密,绕过一些网络传输规则。我们虽然每天都在使用压缩文件,但是真正有了解的还是比较少,数据压缩的原理和压缩文件格式的区别,不同的压缩方式和效率区别还是比较大的,你选对了压缩方式了吗?

首先我们了解一下压缩的原理,压缩分为「有损压缩」和「无损压缩」。有损压缩就是直接对文件进行压缩,删除不重要的数据,一般用于音乐、视频、图像等媒体文件。有损压缩后不能还原,比如在微信上传图片未勾选“原图”时,就会被有损压缩。无损压缩,数据可以被完美还原。我们今天讨论的是无损压缩中的,压缩包形式。

简单来说所有文件都是由代码组成的,代码数量决定了文件体积,但是,文件体积与文件包含的有效信息量却并不对等。因为文件中的代码并不是最精简的状态,如果将这些代码精简,就能在文件内容不变的情况下缩小文件体积。所有压缩软件的工作原理都是这样,只是不同格式的算法不同。

就拿我们目前使用的最多的RAR、ZIP和7z压缩格式来给大家讲解:

一、ZIP格式:

ZIP的前身是名为ARC的商业压缩软件,1985年一家名为SEA(System Enhancement Associates,系统增强伙伴)的小公司开发了一个在MS-DOS平台下的商业压缩软件,名为ARC。当时的软件发行方式略有不同,用户购买了软件,除了得到软件的可执行文件还包括一份C语言的源代码。卡茨从网上下载了一份ARC的C语言源代码,并用汇编语言将其全新编写并编译出来,但是也因为造成了对ARC公司的侵权,打了几场官司后,卡茨就制作出新压缩软件PKZIP(Phillip Katz' ZIP),这款全新的软体比ARC的压缩率、压缩性能都要高许多,并且包含更多功能。

因格式开放且免费。越来越多的软件内嵌支持打开Zip文件。这时,Zip文件越来越像一个经过压缩的透明文件夹。它不仅能在Win系统畅行无阻,还能Mac系统中称霸一方。现如今,无论是Win用户还是Mac用户都无需为解压缩操作而单独下载安装相应软件,因为Win和Mac的开发人员已经在系统层面集成了对此格式的支持。

另外 zip 格式相当简单,没有制定统一的标准,导致很多格式问题,比如不同语言的操作系统互传 zip 后打开显示为乱码;同一个文件压缩后 md5 值不一样;不同软件打开同一个压缩文件看到的时间信息不一样等等。

二、RAR格式:

RAR 是一种专有的文件格式,用于文件的压缩、归档与打包。RAR 的全名是:Roshal Archive(即“罗谢尔的归档”之意),其开发者是尤金·罗谢尔(Eugene Roshal)。首个公开版本 RAR 1.3 发布于1993年。Roshal 最初编写了 RAR 的 Dos 版本的程序用以编码和解码文件,后来该程序被移植到其他的平台,比较著名的是 Windows 平台上移植版的 Win RAR。Eugene Roshal后来公开了解码程序的源代码,但是编码程序仍然是私有的。

如果你对比过的话会发现 rar 格式的压缩率通常高于 zip,但你大概不知道这是一个专利文件格式,只有收费软件「WinRAR」可以创建rar格式的压缩文件,但其他压缩软件可以解压 rar 文件。目前市场上只有收费软件WinRAR可以创建rar格式的压缩文件,例如BetterZip、WinRar等等。只是创建!我们还是可以使用支持此格式的压缩软件来解压rar文件。

当年电脑刚刚开始普及的时候,软盘容量很小,网络传输速率又慢,压缩率更高的 rar自然成了广大网友分享资源的首选,下载站为了节约带宽成本,也都使用 rar。

Rar与Zip相比还有一个很大的优势,就是其安全性。虽然两种格式都可以设置密码,但此局Rar更胜一筹。前文我们提到Zip是开放免费的,所以Zip格式的压缩文件常常被暴力破解,用户文件的隐私性令人担忧。而RAR填补了这些空白,AES对称加密算法以及长达128位的密码长度都在为文件的安全保驾护航。

三、7z格式:

最后你可能还见过7z格式的文件,这是开源软件 「7-Zip 」的开源压缩格式,和 zip 一样,主流的软件都能打开或创建 7z 格式的文件。作为压缩格式中的后起之秀,7z 的压缩率甚至比收费的 rar 还要高,但是它诞生在rar 已经普及的年代,并没有乘上互联网普及的的东风,所以也难以取代 rar 和 zip的地位。7z相当于ZIP格式的升级版。

要注意的是7z为了实现比同届选手更高的压缩率,可谓兵行险招,在算法中使用了包括报头压缩在内的方法,正因如此,一旦7z压缩文件受到损坏,此文件格式修复的可能性就变的很小了。

最后我们来做一下总结和对比:

1、压缩率来讲

7z > RAR > ZIP,如果只追求将文件压缩到最小,那么肯定是选择7z格式的最好,

2、普及性来讲

(1)zip格式是最广泛的,win系统和Mac系统在不装第三方App的情况下,是可以打开zip压缩文件的,这也是其他压缩格式所不具备的优势。

(2)Rar格式虽然以很高的压缩率闻名于世,但由于其并不免费,部分用户还是在免费区潜水,而且此格式的创建非收费软件不可,使用的人也就相对少一点。

(3)7z格式完美的继承了Zip的优点,例如强大的曝光力度,被大多数软件兼容,而且在压缩率上进步比较明显,甚至可以超越RAR,但是使用此格式不一定免费。

由上可知,大多数用户还是优先考虑zip、7z格式。因为我们并不知道对方是否有相应的解压工具,例如BetterZip等工具来解压缩Rar文件。

3、压缩速度来讲

高的压缩率是大体量文件的追求,但高的压缩率会以压缩时间为代价。对于Zip、Rar、7z三种格式来说,Rar和7z相差无几,而Zip就比较快了。

综上以上信息来讲,如果你对于压缩时间和传输时间没有要求,也不需要高压缩率的大文件,同时也不想为解压缩文件付费,那么Zip格式就是最好的选择,不需担心对方是否无法解压文件,因为这是所有格式中最省心的,各个平台都能通用。如果你想要将文件压缩小,追求传输速度,那么Rar会是不错的选择,虽然需要付费下载相应软件,但其安全性是其他格式所不具备的。当然,如果想将文件压缩到最小,不妨试试7z格式,虽然会有破损的风险,但越小的压缩包,传输速度越快。最终的选择还是要看用户自己的侧重点。

最后推荐几款好用的压缩包软件:360压缩包(国际版)、Bandizip、Nanazip、7-Zip和PeaZip。


文/教育观察者

前言

我们常说:985工程大学代表着我国高等教育的最高水平,但即便实力强悍、占比仅为1%的985,也并非在各领域的荣誉都“盆满钵满”。

再者,985工程的启动毕竟在20多年前,经过20多年的发展与变化,我国部分985大学在全国高校界的地位,早已经不似当年,比如兰州大学,从上流985逐渐沦为末流985,又比如中国海洋大学和中央民族大学等,录取分已经被许多顶级211大学按在地上“摩擦”。

又比如这项国家重大计划,尽管我国有39所985大学,可最终入选的却也只有16所,反倒是部分211和双一流赫然在列、榜上有名。

一项国家重大计划!全国仅24所大学入选,其中985大学仅16所

这项国家重大计划,就是“国家卓越工程师学院建设高校”,不久之前,教育部公布了第二批国家卓越工程师学院名单,共有14所大学入选,加上第一批入选的十所高校,全国获批国家卓越工程师学院的高校才只有24所

在第一批评选中,全国仅十所大学上榜,全部都是985工程大学,分别是清华大学,北京理工大学,东南大学,西北工业大学,浙江大学,哈尔滨工业大学,华中科技大学,北京航空航天大学,上海交通大学,以及重庆大学

有细心的网友应该发现了,与清华齐名的北京大学并未入选,其实也是意料之中的,毕竟评选的是“国家卓越工程师学院建设高校”,凡能入选的,肯定都是工科实力非常强悍的高校,但北京大学优势并不在工科,而是在文科和理科方面。

其中,清华大学是我国工科实力排名第一的高校,哈尔滨工业大学是我国工科实力排名第二的高校,上海交通大学、浙江大学、北京航空航天大学、北京理工大学、西北工业大学等,更是深受广大优秀学子们欢迎的理工强校。

在第一批入选的十所高校中,最为低调的当属西北工业大学,简称西工大或西北工大,坐落在陕西省省会西安市,直属中华人民共和国工业和信息化部,是一所以发展航空、航天、航海等领域人才培养和科学研究为特色的多科性研究型全国重点大学。

西北工业大学创办于1938年,前身是国立西北工学院,过去的很多年里,在地理位置的影响下,西北工业大学录取分并不太高,但随着时代的发展,当代学生和家长们也越来越“慧眼识珠”了。

再来看第二批入选的高校名单,第二批共有14所大学入选其中有六所985大学,分别是大连理工大学,电子科技大学,西安交通大学,天津大学,同济大学,以及华南理工大学

另外,还有七所211大学分别是北京科技大学,南京航空航天大学,中国石油大学(北京),北京邮电大学,哈尔滨工程大学,南京理工大学,以及西安电子科技大学

以及一所双一流建设高校:南方科技大学

这就是第二批入选“国家卓越工程师学院建设高校”的大学名单,其中,大连理工大学简称大工,是我国排名前三的理工大学;电子科技大学位于四川省成都市,是全国赫赫有名的科技类院校;天津大学又是中国第一所现代大学;同济大学位于上海,华南理工大学位于广东省广州市,都是我国有名的理工重点。

北京科技大学、北京邮电大学都坐落在北京市,是深受欢迎的211工程院校,尤其是北京邮电大学,虽然只是211,但在优越地理位置的影响下,录取分数线已经超过许多985了。

西安电子科技大学也是如此,哈尔滨工程大学、南京理工大学、中国石油大学(北京)也都是深受欢迎的211工程院校。

当中最出人意料的,当属唯一的双一流“南方科技大学”,南方科技大学简称南科大,坐落在广东省深圳市,到目前为止,也只是一所创办才只有十多年的高校,但创办仅十多年,已经在2022年时入选双一流了,2023年又入选了国家卓越工程师学院建设高校。

南方科技大学的发展,实在令人惊叹,堪称我国高校史上的一个“奇迹”,南方科技大学也凭借着出色的学科专业、完善的基础设施、以及优越的地理位置等,吸引着来自各地的高分考生们。


文/教育观察者

前言

喜欢这件事,其实是很主观的,每个人都会因为一些原因,去喜欢一个人或者一件事物,有时是出于利益考虑,有时是出于感受考虑,还有时是出于其他方面的考虑。

总之,在各种原因的影响下,每个人心里最喜欢的人的类型,或者事物的类型都各有不同,体现在高考中就是,每位考生心目中最理想的大学也各有不同,比如在985队伍中,有人更看好清华大学,有人更看好北京大学,有人更看好国防科技大学,还有人更看好中国科学技术大学。

有一位网友,就根据自己心目中对每一所985大学的喜爱程度,整理出了一份关于我国985大学的排名榜,在这份榜单中,北京大学已经跌至第三,上海交通大学也无缘前五,另外,还有两所大学未能上榜。

我国985大学排名“更新”了,北大跌至第三,上海交大无缘前五

在这位网友整理的排名榜上,我国取得第一名的还是清华大学,毕竟是全国最顶尖的高校,但取得全国第二名的,已经不是北京大学了,而是中国科学技术大学

中国科学技术大学简称中科大,位于安徽省合肥市,也是首批985工程建设高校;第三名才轮到北京大学,简称北大,位于首都北京市,与清华大学齐名,都是全国数一数二的顶尖院校。

夺得第四名的是复旦大学,简称复旦,坐落在上海市;第五名是低调的南京大学,简称南大,坐落在江苏省南京市,是中国最古老的大学之一;另一所坐落在魔都上海的C9联盟高校“上海交通大学”已经无缘前五,只排在第六名

至于位于“人间天堂”杭州市的浙江大学,情况就更糟糕了,只排在全国第七名第八名是北京航空航天大学,简称北航;第九名是中国人民大学,简称人大,人大的名次还是很符合广大学生和家长期望的。

最后一所进入前十名的是南开大学,简称南开,坐落在直辖市天津,地理位置优越,办学历史也很悠久;第11名是同济大学,坐落在上海市,简称同济,是一所老牌的理工类强校;第12名是东南大学,简称东大,位于江苏省南京市,颇有东方古韵。

排在第13名的是中山大学,坐落在广东省广州市;第14名是北京师范大学,简称北师大,被誉为师范大学队伍中的“清华”;第15名是天津大学,简称天大,我国第一所现代大学。

昔日在前十名的武汉大学,这次只能排在全国第16名第17名是华东师范大学,位于上海市,全国排名第二的师范类院校;第18名是华中科技大学,简称华科,坐落在湖北省武汉市,与武汉大学有着相同的地理位置。

第19名是北京理工大学,简称北理工;第20名是华南理工大学,简称华南理工,坐落在广东省;第21名是厦门大学,简称厦大,位于福建省厦门市;第22名是电子科技大学,坐落在四川省成都市。

第23名是西北工业大学,简称西工大,坐落在千年古都西安市;第24名是重庆大学,位于西南地区的直辖市重庆;至于西安交通大学和哈尔滨工业大学,名次更让人意想不到,怎么说也是首批985工程建设高校,在全国赫赫有名,深受学生和家长欢迎,可到头来却只排在第25和第26名

取得第27名的是湖南大学,可简称为湖大,位于湖南省长沙市,是我国南方地区的一所985工程重点;第28名是山东大学,简称山大,坐落在山东省的省会济南市;第29名是四川大学,位于四川省成都市,简称川大。

第30名是大连理工大学,位于辽宁省风景如画的海滨城市大连;第31名是中南大学,位于湖南省长沙市;第32名是中国农业大学,一所国字头985院校;第33名是东北大学第34名是吉林大学第35名是兰州大学第36名是中国海洋大学第37名是西北农林科技大学

另外,还有两所985大学未在榜单中出现,分别是国防科技大学和中央民族大学

国防科技大学位于湖南省长沙市,简称国防科大,素有“军中清华”的称号;中央民族大学简称中央民大,位于首都北京市,是全国唯一拥有985头衔的民族类院校

今日话题:

对于这位网友心中的985大学排名榜,你怎么看?在你心里,我国39所985大学是如何排名的呢?


之前分享过很多关于“家庭服务器”的内容,不过有朋友反馈说那些内容太零散,看完后很多疑问。于是我梳理了家庭服务器搭建的整个流程,把经验分享给大家:

d8246ead2ebb4700acd17fe2e42cd4b4noop.image_



第一步:选择硬件

个人服务器的门槛比你想象的低:一台两三百元二手小主机,或者一台闲置的笔记本电脑旧物利用,或者组一台ITX主板和小机箱的低功耗主机。如果你预算充足又不在意功率甚至可以买台塔式服务器。总之个人服务器的硬件价位选择非常丝滑,从几百到几万都能找到合适的方案。我建议从小主机或者旧笔记本脑开始入门。

家庭服务器常用的功能有:家用NAS、下载机、智能家居服务器、家庭影院、客厅游戏机、软路由、监控录像机等等。要想满足上面的这些需求,我对小主机的硬件有这几点建议:

一、CPU4核以上、内存8G以上,满足多任务处理的性能需求;

二、有2个以上硬盘位,或至少有1个板载硬盘+1个2.5寸SATA硬盘位(系统和数据分别在2个独立硬盘上);

三、用作软路由的小主机最好有2个以上的网口,作为影音服务器最好支持HDMI2.0以上;

我推荐两个参考配置:CPU:J4105内存:8G 或者CPU:N4100内存:8G,价格目前应该在五六百左右。

再分享一个经验技巧:小主机一般为12V-19V直流供电,低压的直流供电加UPS的成本比交流供电低很多。网上有很多18650锂电池的成熟方案,自带DC公母头开箱即用。所以建议给小主机配一个充电电池充当UPS,成本不过几十元。

60748b6ccb4c4b2b8640537bfda3f6c7noop.image_



最适合新手的家庭服务器硬件,我认为是闲置的旧笔记本电脑。旧笔记本电脑的优势有这几点:

一、笔记本自带电池,相当于自备UPS;

二、笔记本自带屏幕、键盘、触控板,操作和维护基本不需要其它外设,使用方便;

三、笔记本运行功率一般不高,息屏运行功率一般不超过15W,比小主机高不了多少;

四、笔记本一般有3个硬盘位,拓展存储方便(笔记本的光驱位也可以改装成硬盘位);

旧笔记本价格和同性能的小主机接近,五六百可以淘到能做家庭服务器的笔记本电脑。不过我也要提醒几点:

一、旧笔记本的最低性能建议是能支持流畅运行Windows10,过于老旧电脑即使便宜也不建议选;

二、不支持拓展硬盘只有板载硬盘的轻薄本(一般为64G、128G),不建议选;

自己搭建主机的可玩性比上面两个方案更强。主机相比小主机和笔记本电脑优势有这几点是:

一、具有PCI-E接口,拥有强大的拓展能力(加装万兆网卡、SAS磁盘阵列卡等);

二、可定制多盘位机箱,更适合作为家用NAS;

三、性能上限高,如果不考虑功耗以直接上标压CPU,性能更强。2000元可以组一台还不错个人服务器,比如锐龙5600G的小主机成本不到3000元,但性能和同价位的NAS已不在一个段位;

如果你的目标是真正的商用服务器。那么机架式服务器、刀片服务器、塔式服务器这几类,适合家用的还是塔式服务器。塔式服务器和家用电脑的主机差不多大。可以了解一下戴尔的Power Edge系列、惠普的 MicroServer Gen系列。标准服务器硬件无论在价格还是功耗上都更加适合烧友玩家,对于一般用户而言此类硬件作为家用服务器性能严重过剩。

相信看了上面的内容,大家对于如何选择硬件以及硬件的价位有了基本了解。如果需要我帮忙推荐具体硬件的,可以私信我或者直接留言。

分享一下我自己的硬件方案:由于我上班在异地,所以家里和出租房分别有两台设备:N4100+8G小主机(当初买是600元)、6200U+8G的ThinkPad(闲置的笔记本),之前还淘汰过一台HP T610瘦客户机:AMD T56N+4G(当初买的160元),主要问题是性能不够用。

468943018ea34569ace30071cf483d67noop.image_



第二步:安装系统

个人服务器的技术门槛真不高,有的话只有一个:会装系统,当你把各个系统都尝试一遍就算成功入门了。

服务器该选择什么系统?和企业场景的服务器不同是:个人服务器不需要考虑全年无故障运行,不需要考虑容错冗余、甚至防火墙设置都不需要太复杂,所以装什么系统还真的挺自由的。市面上NAS能做的事情,Windows10再安装个Docker for Windows基本都能做。所以不想折腾安装个Windows10就行。但是我依然强烈推荐Linux发行版,因为SSH实在是太方便了。

如果你想学习Linux,要掌握3个基本技能:一、基本的Bash shell命令;二、Vim的基本操作;三、SSH的本操作。这几个技能可以在网上找一下教程学习。

Linux发行版很多,我接触过的有Ubunt(现在在用)、Manjaro、Linux mint(适合配置低的电脑),这几个可以做到开箱即用,网上参考资料也有一些。国产的Linux可以选Deepin深度。至于Arch Linux、Gentoo linux这类需要编译安装的Linux就不适合新手了。如果你的个人服务器性能过剩(8核以上、32G内存以上),想要搭建多系统。可以学习一下ESXi和PVE,通过虚拟化技术让多个系统同时运行。不过我对于性能不那么执着,Docker已经可以满足绝大部分使用场景需求,所以我自己也没有搭建ESXi的需求。

“如何安装系统”作为基础知识我这里就不讲解了,不过我推荐一个系统安装的神器:Ventoy。Ventoy制作安装U盘后,会产生2个分区。空间较小的分区是启动分区,较大的分区是数据分区,把系统镜像和常用软件包放在数据分区。

5c436064700f42459e78a885b22823eanoop.image_



把系统镜像拷贝到Ventoy启动U盘后,设置BIOS从U盘启动即可开始安装系统。Ventoy最强大的功能是支持同时拷入多个系统镜像,可选择镜像安装,无需重复制作启动U盘。如果进行Windows安装和维护,你更习惯功能更丰富的PE,我推荐比较好用两个:优启通和微PE,其余的PE系统大多夹带了不少私货。

分享一个新手常有的思维误区:Windows和Linux要二选一吗?首先永远不要用饭圈思维想问题。Windows和Linux两者并不需要二选一,两个系统都非常强大都值得学习。日常使用Windows更顺手,但Linux在一些专业场合也非常强大。

第三步:网络设置

如果你的服务器有公网IP地址,那么远程访问服务器并不是一件难事。但是大多数人目前是没有固定的公网IP的,那么zerotier、tailscale这类虚拟局域网解决方案可以帮到你。我最早接触的是zerotier所以以zerotier为案例,tailscale基于wireguard相信效果应该也还可以。

首先到zerotier官网注册一个账户,然后在Networks页面创建一个虚拟局域网。你会获得一个NETWORK ID,通过这个ID你可以让其它设备都加入到一个相同的虚拟局域网中。

7faec8bcb3b34e268dda0b0cba9af08dnoop.image_



接下来就是在不同的设备上安装zerotier的客户端,然后加入上面设定的NETWORK ID即可。windows客户端有UI界面操作比较简单,我主要介绍一下Linux端的操作:

#安装zerotiercurl -s https://install.zerotier.com | sudo bash#安装成功后加入网络sudo zerotier-cli join NETWORK ID#重启一下服务确保设置生效service zerotier-one restart#zerotier主要有zerotier-cli(操作程序)和zerotier-one(服务端)这两个命令进行管理

除了windows和linux,zerotier还可以安装在openwrt的路由器和智能手机上。你的设备加入网络后,还有一步需要操作,就是进入后台勾选设备加入虚拟局域网。这个时候,你可以在Manged IPs看到设备的虚拟局域网IP。通过这个IP,不同设备就可以好像在局域网中进行通信。zerotier基于UDP通信,如果双方实现直连速度还是很不错的。如果没有实现直连速度不到1M且延时有500ms以上。可以通过架设moon服务器改善网络情况,这个需要购买云服务器,我将在zerotier提升篇介绍如何操作。

cb647fb25cc945dfae9838ba5e01b0d2noop.image_



有了虚拟局域网,你就可以在家庭服务器上通过Docker架设各种服务,并远程访问这些服务了。

第四步:部署应用

搭建web服务已经不是什么有难度的操作,Docker的出现让服务搭建变得非常简单(现在的运维都已经主要在折腾集群维护)。Docker基于Linux,但Windows有WSL所以也能安装,可以通过Docker for Windows或者在WSL里安装Docker。下面就来详细介绍一下:

4.1安装Docker

Ubuntu安装docker

sudo apt install docker.iosudo systemctl start docker  sudo systemctl enable docker#如果有需要还可以安装docker-composesudo apt install docker-compose

Windows安装Docker,可以去Docker官网下载Docker Desktop for Windows安装包,直接运行安装即可,从使用体验上我更推荐原生Linux环境使用Docker。

4.2部署应用

服务器应用部署就是根据需求安装不同的程序,这个内容很难用短的篇幅讲述完,比如homeassistant搭建智能家居服务器就有非常多的内容。所以我会在后面的文章里继续补充,这里主要讲应用部署的两种方法:

第一种是直接安装。像Samba这样的软件,以及Calibre这样的软件都可以通过直接安装的方式。二者都可以通过局域网访问,而通过zerotier就可以在外网进行访问了。

Samba——文件服务器

Windows设置文件共享很简单,linux安装Samba也非常简单:

 #安装samba
 sudo apt install samba

安装完毕后,只需要把指定文件夹设置成共享,其它主机只需要通过访问局域网主机IP地址,即可访问服务器共享的内容。

Calibre——个人电子书库

Calibre的Windows版是下载安装包,而Linux版则可以用命令行安装:

sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin

安装Calibre后,打开Calibre开启内容服务。局域网内所有设备都可以通过浏览器访问书库。

第二种是通过Docker安装,Docker安装的好处是安装安装简单,删除方便。可以帮助你的服务器搭建非常多的服务,同时省去了大量的配置时间。而且Docker在Windows上也能运行,后面我还将继续详细讲解Docker,不过这里简单分享几个应用:

比如speedtest测速服务,通过安装speedtest你就可以知道你和你的个人服务器之间的网速如何。通过docker安装非常简单,安装之后只需要访问:http://local:8090即可进行测速。

#拉取镜像docker pull adolfintel/speedtest#运行speedtestdocker run --restart=always -d -p 8090:80 adolfintel/speedtest

暂时先分享到这里,欢迎留言讨论!


低代码low-code,无代码no-code,合称LCNC,近年来获得较快发展。低代码和无代码(LCNC)软件应用是当今商业领域最大的技术创新之一。顾名思义,低代码和无代码开发有助于简化开发流程,而不需要复杂的编程工具或专业知识。LCNC对用户的技术知识要求很低,是易于实施的开发解决方案。本文将集中介绍12种低代码平台。

一 JeeSite

1 简介
JeeSite 快速开发平台,不仅仅是一个后台开发框架,它是一个企业级快速开发解决方案,后端基于经典组合 Spring Boot、Shiro、MyBatis,前端采用 Beetl、Bootstrap、AdminLTE 经典开发模式,或者分离版 Vue3、Vite、Ant Design Vue、TypeScript、Vben Admin 最先进技术栈。提供在线代码生成功能,可自动创建业务模块工程和微服务模块工程,自动生成前端代码和后端代码;包括功能模块如:组织机构、角色用户、菜单及按钮授权、数据权限、系统参数、内容管理、工作流等。采用松耦合设计,微内核和插件架构,模块增减便捷;界面无刷新,一键换肤;众多账号安全设置,密码策略;文件在线预览;消息推送;多元化第三方登录;在线定时任务配置;支持集群,支持SAAS;支持多数据源;支持读写分离、分库分表;支持微服务应用。

JeeSite快速开发平台的主要目的是能够让研发人员快速的开发出复杂的业务功能。让开发者注重专注业务,降低技术难度,从而节省人力成本,缩短项目周期,提高软件安全质量。

JeeSite 自 2013 年发布以来已被广大爱好者用到了企业、政府、医疗、金融、互联网等各个领域中,JeeSite 架构精良、易于扩展、大众思维的设计模式、工匠精神打磨每一个细节,深入开发者的内心,并荣获开源中国《最受欢迎中国开源软件》奖杯,期间也帮助了不少刚毕业的大学生,教师作为入门教材,快速的去实践。

JeeSite4的升级,作者结合了多年总结和经验,以及各方面的应用案例,对架构完成了一次全部重构,也纳入很多新的思想。不管是从开发者模式、底层架构、逻辑处理还是到用户界面,用户交互体验上都有很大的进步,在不忘学习成本、提高开发效率的情况下,安全方面也做和很多工作,包括:身份认证、密码策略、安全审计、日志收集等众多安全选项供你选择。努力为大中小微企业打造全方位企业级快速开发解决方案。

2 官网地址
JeeSite 官网地址:http://jeesite.com
JeeSite 在线文档:http://docs.jeesite.com
JeeSite 演示地址:http://demo.jeesite.com
JeeSite 演示地址(Vue):http://vue.jeesite.com
JeeSite 源码下载:https://gitee.com/thinkgem
JeeSite 在线提问:https://gitee.com/thinkgem/jeesite4/issues
ThinkGem 博客:http://my.oschina.net/thinkgem

二 JeecgBoot

1 简介
JeecgBoot是一款基于BPM的低代码平台!前后端分离架构 SpringBoot 2.x,SpringCloud,Ant Design&Vue,Mybatis-plus,Shiro,JWT,支持微服务。Jeecg不仅提高了UI能力,还降低了前后端分离的开发成本,具有一系列低代码能力:Online表单、Online报表、Online图表、表单设计、流程设计、报表设计、大屏设计等等。

JeecgBoot基于代码生成器,支持无代码配置化快速开发,适用于常见的企业信息管理系统开发,比如OA办公、ERP系统、客户关系管理系统等,显著提高开发效率,降低开发成本。

代码托管在Github和Gitee,star数量超14.7K,fork数量超5.7K,获得多个奖项,连续五年中国最火TOP5、十大优秀开源项目、2014年微信开发商大会第一名。

JeecgBoot和多个项目一起,形成了完善的解决方案。

(1) JeecgBoot

基于代码生成器的低代码开发平台,无代码配置化,前后端分离架构,技术栈使用主流的Java + Spring Boot + MyBatis,前端使用node + Ant Design。

最新版本JeecgBoot2.2.1,发布于2020年7月13日,包括多项功能优化,支持Docker一键部署。

(2) JeecgCloud

Jeecg Boot的微服务版本,基于Nacos服务注册和发现框架。

最新版本1.0.0 Beta,发布于2020年5月21日。

(3) JeecgUniApp

一站式跨平台,完整的移动解决方案,采用Uniapp+ColorUI 框架,APP、小程序、H5多终端适配。

版本1.0.0 Beta,发布于2020年6月8日,最新改版上线于8月17日。

(4)JeewxBoot

基于Java + Spring Boot开发的微信管理平台,采用插件机制,支持公众号、小程序、第三方平台,包括公众号基础管理、群发、系统权限、抽奖活动、小程序官网等功能。

最新版本1.1.0,发布于2019年12月5日。

(5) JeewxAppCMS

基于wepy语言开发小程序,包含CMS网站基本功能,快速开发应用。

最新版本1.1.0,发布于2020年5月30日。

2 官网地址
Jeecg-boot 官网、Github 及详细测评
Jeecg-boot 官网:http://www.jeecg.com/
Github:https://github.com/jeecgboot/jeecg-boot
JeecgBoot测评:《JeecgBoot 后台管理框架怎么样评价如何?》

三 Pig - PigX 快速开发平台的开源版

1 简介
Pig 基于 Spring Cloud、OAuth2.0、Vue的前后端分离的快速开发平台,PigX 是它的商业版本。Pig面向企业开发场景,封装了大量技术开发包、组件并支持 SaaS 多租户,为企业提供了一个可支持各类业务系统或产品快速开发实现的微服务应用数字化融合平台。

Pig 基于 Spring Cloud 微服务框架进行封装,平台设计灵活可扩展、可移植、可应对高并发需求。同时兼顾本地化、私有云、公有云部署,支持SaaS模式应用。企业级应用系统所包含的常用开箱即用的模块,并支持灵活的可配置性和拓展性。一套基于 Spring Cloud 的微服务应用程序框架,可帮助公司更快,更高效地进行微服务开发。相较于业界使用广泛的开源版本平台,提供更强大的功能和更全面的服务支持。

基于 Spring Cloud Hoxton 、Spring Boot 2.2、 OAuth2.0 的 RBAC 权限管理系统,基于数据驱动视图的理念封装 Element-ui,即使没有 Vue的使用经验也能快速上手。提供对常见容器化支持 Docker、Kubernetes、Rancher2 支持,内置低代码生成模块,可以适用于不同开发领域。

2 Pig 官网、Github 及详细测评
Pig 官网:https://pig4cloud.com
Github:https://github.com/pig-mesh/pig

四 若依(RuoYi)

1 简介
若依 RuoYi 是一套完全开源,基础功能完备的 admin 后台管理框架系统。它基于经典技术组合 Spring Boot、SpringCloud、Apache Shiro、MyBatis、Thymeleaf ,若依前端有 BootsTrap 和 Vue + Element两个版本。若依是快速开发框架的佼佼者,内置了常见的后台管理系统模块,以及后端代码生成器,可一键生成后端代码,让开发者更好的专注在自己公司业务逻辑的开发上。基于SpringBoot、Spring Security、Jwt、Vue的前后端分离的后台管理系统
RuoYi-Vue 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring Security、MyBatis、Jwt、Vue),内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源,支持分布式事务。

2 官网地址

若依官网:http://ruoyi.vip

3 主要特性

完全响应式布局(支持电脑、平板、手机等所有主流设备)
强大的一键生成功能(包括控制器、模型、视图、菜单等)
支持多数据源,简单配置即可实现切换。
支持按钮及数据权限,可自定义部门数据权限。
对常用js插件进行二次封装,使js代码变得简洁,更加易维护
完善的XSS防范及脚本过滤,彻底杜绝XSS攻击
Maven多项目依赖,模块及插件分项目,尽量松耦合,方便模块升级、增减模块。
国际化支持,服务端及客户端支持
完善的日志记录体系简单注解即可实现
支持服务监控,数据监控,缓存监控功能。

演示地址:http://vue.ruoyi.vip
代码下载:https://gitee.com/y_project/RuoYi-Vue

*技术选型
(1)系统环境

Java EE 8
Servlet 3.0
Apache Maven 3
(2)主框架

Spring Boot 2.2.x
Spring Framework 5.2.x
Spring Security 5.2.x
(3)持久层

Apache MyBatis 3.5.x
Hibernate Validation 6.0.x
Alibaba Druid 1.2.x
(4)视图层

Vue 2.6.x
Axios 0.21.x
Element 2.15.x

*内置功能
用户管理:用户是系统操作者,该功能主要完成系统用户配置。
部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
岗位管理:配置系统用户所属担任职务。
菜单管理:配置系统菜单,操作权限,按钮权限标识等。
角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
字典管理:对系统中经常使用的一些较为固定的数据进行维护。
参数管理:对系统动态配置常用参数。
通知公告:系统通知公告信息发布维护。
操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
登录日志:系统登录日志记录查询包含登录异常。
在线用户:当前系统中活跃用户状态监控。
定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
系统接口:根据业务代码自动生成相关的api接口文档。
服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
缓存监控:对系统的缓存信息查询,命令统计等。

五 BladeX
1 简介
BladeX 是一个基于 Spring Boot 2.7 & Spring Cloud 2021 & Mybatis 等核心技术,用于快速构建中大型系统的基础框架。
已稳定生产近一年,经历了从Camden->2021的技术架构,也经历了从FatJar->Docker->K8S+Jenkins的部署架构。
采用前后端分离的模式,前端开发两个框架:Sword(基于React、Ant Design)、Saber(基于Vue、ElementUI)。后端采用SpringCloud系列,对其基础组件做了高度的封装,单独出一个后端核心框架:BladeX-Tool。
BladeX-Tool已推送至Maven私有库,直接引入减少工程的模块与依赖,可更注重于业务开发。集成Sentinel从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。注册中心、配置中心选型Nacos,为工程瘦身的同时加强了各模块之间的联动。封装集成了基于注解+Web可视化的数据权限,灵活配置,无需重启直接生效。定制了基于Nacos的轻量级、高拓展性的动态网关,完美支持多团队开发。精心设计集成了minio,完美支持多租户模式下的oss对象存储需求。

2 BladeX 官网、Github 及详细测评
BladeX 官网:https://bladex.vip/
BladeX Github:https://github.com/chillzhuang/SpringBlade

3 架构简介
基于SpringBoot2、SpringCloud Hoxton、Mybatis构建核心架构
采用Oauth2协议进行统一的Token下发与鉴权,保证系统安全性
使用Gateway进行网关的统一转发,生产环境采用Traefik代理
微服务统一注册至Nacos,Nacos担任注册中心与配置中心的角色
采用Feign进行远程调用,Ribbon进行负载,Hystrix进行熔断
采用Sentinel进行限流,保障系统整体的性能
集成Seata,为分布式事务保驾护航
具有日志收集与监控服务为一体的能力
支持FatJar、Docker、K8s、阿里云等多种部署方式

六 卡拉云
1 简介
卡拉云是新一代企业级低代码开发平台,可帮助开发者快速搭建后台管理系统。卡拉云从 2020 年第一个公测版开始,已经迭代升级了多个大版本,特别针对国内企业级大型后台管理系统搭建场景优化。

卡拉云可快速搭建企业级后台管理系统(ERP、CMS、CRM、OA、MES、订单管理、客户管理、物流管理、财务管理等复杂系统),它内置常用的前端组件,简单鼠标拖拽即可快速生成。可一键接入数据库和 RESTful API、企业微信、钉钉、飞书等常见的数据源,可在前端直接写 SQL & js ,实现复杂的代码逻辑。

卡拉云之所以能快速搭建后台管理系统,是因为它把后台管理系统抽象成三个部分,「前端组件」、「数据源」、「连接前端组件和数据源的简单 JS 代码」,每个部分卡拉云都帮开发者写好,不用再重复造轮子,开发者只需调用即可。

卡拉云帮助开发者把所有前端组件写扎实,开发者只需要拖拽即可一键生成所需组件,无需操心任何前端问题。也无需自己搭建后端,只需要简单填写配置表即可接入数据库、API 等常见数据源。前后端卡拉云都帮助开发者写好,开发者只需要写简单的 JS & SQL 代码连接前后端即可实现后台管理系统快速搭建。接下来,我来详细测评卡拉云的技术细节。

卡拉云由三个部分组成,前端组件+后端数据源+连接组件与数据源的简单代码。

卡拉云针对国内互联网应用场景进行了许多优化,不论是使用习惯上,还是应用场景上都更贴近国内用户。如集成了阿里、腾讯、华为等多家云存储、可轻松调用七牛云 API、Leancloud API、金数据、又拍云、企业微信、钉钉等常见的第三方应用接口,方便开发者直接使用。

2 官网地址
卡拉云官网:https://kalacloud.com/

七 Retool

Retool 是面向企业的低代码开发平台。使用 Retool 可快速搭建后台管理工具,比如快速构建 admin 后台管理、销售 ERP、客户 CRM、数据分析看板、amazon 云端文件上传管理等基于数据库或 API 的企业工具。

新事物刚出现,没亲身体验前,总是很难理解。我们总会把新事物与我们已认知的东西来做对比,有人说 Retool 是帮你配置好的 Vue & React 、是可视化拖拽编程平台、是在线前端生成器(并不是)。这些说法都只描述了 Retool 很小的一个点,Retool 是新一代低代码开发平台,是程序员的新效率工具,是历史上不曾有的新工具,拿旧地图看新世界总会有很大偏差,建议你亲自试试看。如果你访问 Retool 比较慢,或想用中文界面,国内也有类似概念的低代码平台,比如卡拉云,后文我们也会对比这两个平台的优缺点和差异。

Retool 有三大特点,无需任何前端编程基础的拖拽组件生成、可连接一切数据库及API,前后端无缝衔接、高度灵活性,高度可定制,为开发者而生。、、

八 AppSmith
1 简介
AppSmith 是印度一家创业公司开发的低代码开发工具,它的原型是另一家名叫 Retool 的美国的创业公司。AppSmith 从 2019 年开始开发,到现在已经发行了 1.x 版本。用户可使用 AppSmith 开发自己的企业内部管理工具,一键接入数据库及 API(支持 RESTful API、PostgreSQL、DynamoDB、MongoDB、Firebase 等),仅需拖拽即可生成的前端 UI 组件。有清晰的权限系统,企业团队在 AppSmith 上开发的 app ,可根据使用者的身份划分权限。
AppSmith有以下特性:
(1)简单拖拽即可创建前端组件;
(2)可一键接入多种数据库及 API;
(3)无需处理前后端问题,会简单 JS 即可;
(4)权限清晰,一键邀请同事加入开发或使用;

2 官网地址
AppSmith官网:https://www.appsmith.com/

九 Budibase

1 简介
Budibase是一个开源的低代码平台,可以帮助在很短的时间内创建一个满足业务应用的web程序。Budibase是包括构建,设计以及自动化业务应用(比如,管理面板,表单,内部工具,客户入口等等),这些都集成在Budibase的低代码平台中。兼容多种数据源,包括MongoDB和PostgreSQL等流行数据库以及Google Sheets等电子表格程序,允许用户快速构建客户端门户和管理面板等应用程序。

Budibase的特点:
支持外部数据源,包括 MongoDB、MySQL 等;
支持 Rest API 拉取数据;
能够使用应用的内置数据库或上传 CSV 来导入数据;
各种数据类型和功能,包括附件、关系、公式等;
API 整合平台,整合不同的 API,帮助你轻松建立内部应用、表单等;
能够使用内部表格生成自动页面;
构建单页应用;
自动生成的 CRUD(创建、读取、更新和删除)页面;
私人和公共应用;
只需点击几下就可以定制你的应用的主题;
容易为你的应用实现深色模式主题;
一个功能丰富的表单生成器,满足广泛的要求;
支持 Webhook;
与诸如 Zapier 等的第三方集成;
基于特定触发器的灵活自动化选项;
能够将 JavaScript 添加到你的自动程序中;
为拥有自己基础设施的用户提供自我托管选项;
免费的单点登录认证/管理;
用户管理选项,将团队分配到不同的应用;
支持 SMTP 电子邮件;
电子邮件模板,以配合你的品牌和风格;
支持 OAuth 登录。目前仅限于谷歌;
图表、表格和卡片来优雅地展示数据。

2 官网地址
Budibase官网:https://budibase.com/

十 ToolJet
1 简介
ToolJet 是一套开源的低代码开发平台框架,可快速构建和部署企业内部工具,帮助开发团队节省大量开发时间。开发者可使用 ToolJet 连接多种常见的数据库(如 PostgreSQL、MongoDB、Elasticsearch 等)也可以直接接入 RESTful API,甚至可以直接调第三方工具(比如 Stripe、Slack、Google Sheets、Airtable 等),灵活的前端组件拖拽生成,无需懂任何前端技术。

ToolJet的特点:

(1)ToolJet 可接入多种数据源、API及第三方工具;
(2)ToolJet 拖拽生成前端组件;
(3)可参与共享开发。

2 官网地址
ToolJet官网:https://www.tooljet.com/

十一 DronaHQ
1 简介
DronaHQ 作为一个低代码工具,其最大突出优势便是能够在已有应用程序上,创建出美观且响应灵敏的内部系统。DronaHQ 提供了丰富的功能组件(多达 50+ 数据源连接、90+ UI 组件),并提供了教程一步步指导创建、设计、部署和托管自己的应用程序。

DronaHQ特点:

(1)丰富的数据源、UI 组件支持
(2)界面 UI 美观(有的人可能会觉得有点卡通)
(3)响应式 UI,支持在「桌面」「移动端」模式间切换
(4)丰富的文档支持

2 官网地址
DronaHQ官网:https://www.dronahq.com/

十二 码匠
1 简介
码匠是一款对开发者友好的低代码平台,在支持多种数据源的同时提供了一套开箱即用的组件,帮助您快速构建功能完善的内部应用,让您专注于业务发展。码匠针对国内用户使用习惯做了大量优化,UI 界面设计更加适合国内场景,并整合了多款国内数据源,包括 飞书、企业微信、钉钉、阿里云 OSS,等等。不仅如此,码匠还提供了国内业务场景下常见的租户管理、更加细粒度的权限控制、审计日志等功能,为您的企业信息安全保驾护航。

码匠特点:
(1)写SQL、配置组件,即可获得功能完善的内部应用,让您可以专注于业务发展。
(2)码匠提供了表格、按钮、输入框、选择器等一套功能强大、开箱即用的UI组件。您可以在5分钟内组装完成您的应用程序。
(3)可以轻松的连接到MySQL、MongoDB、Redis、Clickhouse等数据源。码匠会加密存储认证信息,此外不会存储客户任何数据。
还提供了一个私有化部署版本,可以自行部署以便完全控制码匠实例和所有数据。

2 官网地址
码匠官网:https://majiang.co/