
发表日期: 2021-04-26 16:29:09 浏览次数:172
如东微信公众号开发【如东网络推广】如东建站、如东网站维护、如东网页制作、如东微信小程序代运营公司
如东县,江苏省南通市下辖县 [1] ,位于江苏省东南部、长江三角洲北翼。县境南与通州区为邻,西与如皋市接壤,西北与海安市毗连,东面和北面濒临黄海。截至2020年末,全县下辖3个街道、12个乡镇 [2] ,陆域面积1872平方千米,海域面积4758平方千米 [3] ,常住人口97.71万人,实现地区生产总值1053.42亿元 [4] 。
如东是江海盐垦文化的代表。秦汉以前县境为长江口沙洲,故称扶海洲。长江、黄淮冲积成陆后,如东盐业兴起,亭场林立,至明清繁盛一时。民国之后,沿海逐步废灶兴垦,现代农渔业得到发展。 [5] 1988年对外开放后,如东沿海进一步开发,建成南黄海优良深水港口洋口港。 [6]
2019年7月,被列为国家知识产权强县工程示范县(区) [7] 。2019年10月8日,被评为2019年度全国综合实力百强县市、2019年度全国投资潜力百强县市、2019年度全国绿色发展百强县市、2019全国营商环境百强县 [8-9] 。2020年7月29日,入选2019年重新确认国家卫生乡镇(县城)名单。 [10] 2020年12月,社科院百强县榜单中如东排名第45 [11] 。
上面的代码,实现的功能主要是,对页面进行设置,收集表单数据并调用远程的日历事件发布Event.Post接口服务,最后处理返回的结果并渲染页面。
管理后台的查看订阅号页面调用的是查询类接口服务,而发布日历事件则调用了命令类的接口服务。虽然通过接口服务可以更有效地维护业务规则的一致性,但对于需要分页的情况,则没有直接操作数据库那样方便。但也正如人们常说编程是一门艺术,也是一项需要综合权衡的工程。任何一种架构设计,都会有其优点和缺点。在实际项目开发过程中,需要作为开发人员的我们仔细评估,采用最适合当前项目的解决方案。例如在这里,相比于维护业务规则的一致性,损失了直接操作数据库的便利性,我觉得,从长远的角度上考虑,是值得的。
在开发完成接口服务,也完成与客户端的联调后,下一步则可以发布上线了。在正式开发流程中,应该通过严格的测试后,通过QA部门的验收后,方可发布上线。但在这里,假设的是非正式开发流程,因此没有专门的测试人员,而是在开发人员自测通过后,就发布上线。
《清单革命》一书中,分享了如何通过清单有效地减少出错的概念。在把项目代码发布到生产环境前,准备一份上线checklist也是大有裨益的,尤其是首次上线。
首次发布,上线checklist包括但不限于:
线上运行环境是否已部署?
Nginx配置是否已就绪,系统站点是否已可访问?
数据库是否已存在,数据库表是否已创建?
PHP是否已安装,所需的扩展是否已安装,php-fpm是否已启动?
项目目录、日志目录、上传目录等是否已分配相应的权限?
日常发布,上线checklist包括但不限于:
所需的系统环境变更是否已执行?
所需的Nginx配置变更是否已执行?
所需的数据库变更是否已执行?
所需的PHP变更是否已执行?
所依赖的第三方系统是否已上线,是否可用?
所需要的计划任务是否已添加?
在WeTime项目首次发布时,主要是要部署线上环境,其过程与前面在部署开发环境类似,这里不再赘述。有一点不同的是,在线上使用的是真实的公网域名,需要进行DNS解析。
当线上环境部署好后,最后就是要把最新版本的代码发布到生产环境。WeTime项目的接口系统api.wetime.com只部署在单台服务器上,因此暂时不需要均衡负载,并且代码包发布的方式非常简单,因为只需要更新一台服务器上的项目代码即可。这时,可选用通过FTP实现文件上传,或者使用Git在服务器上进行更新,或者在本地将项目代码打包然后使用rz命令上传到服务器再解压等其他文件上伟方式。
在使用Git管理项目代码时,通常以dev分支作为多人协作开发的分支,当需求功能开发完成后,由开发人员将dev分支的代码合并到主干master分支,最后将master分支的代码同步到生产环境。这种分支管理方式,虽然简单,但非常适用于小团队的项目。
成功上线后,接下来需要通知产品人员或者项目干系人进行发布验收,确保所提供的接口服务能满足预期的业务需求。对于不能满足的业务场景,需要进行相应调整;对于遗漏的场景,需要开发补全;而对于发现的缺陷,需要及时修复。只有通过了发布验收,我们对接口服务的开发才算是交付完成。这也是项目开发流程中重要的里程碑之一。
在这一章,从最初收集创业项目的需求,到最后发布上线并通过验收,我们粗略地感受了一个基本项目开发的流程。虽未亲身参与其中,却也能得到了一个初步的感观认识,对于未曾有过实际项目开发经验的学生或者初级开发工程师有一定的参考作用。类似这样通过学习而获得的项目经验,有助于帮助我们在面对新项目时,化被动为主动,因为我们已经知道在何时应该做何事。
在本章结束前,再分享一个小故事。相传在很久以前,有个不识字的地主的儿子到了该读书的年龄,他便把小孩送去书塾开始上课,主要是学习如何用汉字写数字。第一天,老先生教会了他第一个字,即数字“一”,于是在黑板上划了一横。第二天,老先生教会了他第二个字,即数字“二”,于是又在黑板上划了两横。到了第三天,老先生在黑板上划了三横……这天回家后,小孩跟他父亲说,“原来写数字这么简单的,我已经全部学会了,不用再去上课了!”地主非常高兴,不仅为儿子的聪明感到开心,更为省下了不少学费而高兴。过了不久,到了除夕,地主想让他的儿子帮忙写“万事胜意”这四个字贴在大门口。他儿子说完全没问题,于是便进了书房准备笔墨,开始书写。可地主在门外等了大半天也没见他儿子出来,于是便进书房一探究竟。他儿子一看到父亲进来,就委屈说道:“爸,第一个‘万’字太难写了,我得划一万行……”。
通过这个小故事,意思是如果读完了这一章,千万先别着急马上去开发项目,编写代码。因为将WeTime项目的功能模块进行逐层划分后,我们有用户、关注、日历事件等模块,而在具体接口服务的开发又聚集于日历事件模块的三个接口服务的开发。日历事件的发布、查看和操作,这些接口服务的实现虽然只是涉及到数据库而已,但也涵盖了数据库的CURD这些基本的数据库操作,以及接口参数规则配置、ADM分层模式、脚本命令的使用等内容。从前面对单个类的点学习,到高级主题的线学习,再到现在项目中的面应用,相信你应该对如何使用PhalApi进行接口服务开发,有了一定的理解。
但是需要注意的是,这里所讲述的WeTime开发过程,并非是真实的WeTime项目的开发过程,更不代表着普遍的实际项目的开发过程。它看起来简单,简单得似乎粗糙而不合理,但这些都是有意而为的,目的是让读者更关注对基础内容的应用。而对于WeTime项目中有待改进的地方,都会在下一章的项目学习过程中,得到改善和优化。因为我们下一章学习的将是一个更全面、更正式的商业项目。

服务热线
顶部
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: http://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878