什么是CMS?百度百科的官方定义是这样的:
内容管理系统(Content Management System,CMS),是一种位于WEB前端(Web 服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统。内容的创作人员、编辑人员、发布人员使用内容管理系统来提交、修改、审批、发布内容。这里指的“内容”可能包括文件、表格、图片、数据库中的数据甚至视频等一切你想要发布到Internet、Intranet以及Extranet网站的信息。
中国互联网疯狂生长的时代,PHP曾经是最好的语言的时候,dedecms和phpcms是每个站长都绕不开的话题,他们可以轻松的安装到虚拟空间里面,通过下一步下一步就可以创建一个个人的网站,并且支持静态页面生成功能,只需要极少的硬件资源就可以搭建一个很不错的网站。
随着PHP的日渐臃肿和中国互联网的发展,PHP主键的没落了。较低的效能,IDE不能友好提示,都是PHP进一步发展的瓶颈。ThinkPHP的出现也进一步加快了PHPCMS没落的步伐。ThinkPHP框架模仿java进行了MVC三层封装,只需要按照官方文档填充就可以开发出功能强大的网站,所以CMS模式逐渐被终结,越来越多的网站改用了ThinkPHP框架。
hardmall框架就是在这个背景下开发的。
与以上框架比较,hardmall主要是有一下特点:
基于Go语言开发,健壮性和稳定性得到保障,原来PHP时代的黑客攻击完全不生效。
采用了微服务框架灵活部署,用户管理等组件独立,可以通过重写组件实现不同用户体系和资源的接入。
采用更加灵活的前台模板,将模板托管在consul中,随时修改,随时预览,不需要清理缓存,重新生成网站查看效果。切换到生产模式后,模板渲染常驻内存,效率大幅提升。
后台管理模仿了Python web框架的王者:django框架,稍加配置就可以实现完整的单表增删改查功能,极大的方便了用户。并且后台基于Vue+element自动生成页面,没有黑魔法,更加健壮和符合现代浏览器。