发表日期: 2021-04-26 14:15:30 浏览次数:119
东海网络公司哪家好【东海企业网站百度SEO推广公司】东海做网站开发价格、东海淘宝店铺开店装修设计运营、公司网站制作方案流程改版维护费用、东海高端企业网站页面制作设计专业公司需要多少钱
东海县,隶属于江苏省连云港市,素有世界水晶之都、中国温泉之乡之称,是全国首批沿海开放县、新亚欧大陆桥西行第一县,淮海经济圈、长三角经济圈、新亚欧大陆桥经济走廊交叉辐射区。 [1]
东海县位于江苏省东北部,地处江苏、山东两省交界处,东濒黄海,西接彭城,南依江淮,北界齐鲁;北至西北与山东省临沭县、郯城县相连,东与连云港海州区、赣榆区接壤,南与沭阳县交界,西与新沂市相依;全县总面积2037平方公里,人口124万,辖19个乡镇(场)、2个街道、1个省级经济开发区、1个省级高新区和1个省级旅游度假区。 [2]
东海县资源丰富、特色鲜明,拥有“石、泉、湖、井、画”等五张特色名片,先后被评为全国粮食生产先进县、全国科技进步考核先进县、国家卫生县城、国家级生态县、全国文化先进县、中国观赏石(水晶)之乡、江苏省级园林城市、百湖之县、中国民间艺术之乡等美誉,先后培养出南朝诗人鲍照、现代散文家朱自清、当代版画家彦涵等历史文化名人。 [3]
2016年11月,东海被国家旅游局评为第二批国家全域旅游示范区。2018年10月,东海县入选“综合实力百强县”、 [4] 全国投资潜力百强县市、 [5] 全国绿色发展百强县市、全国新型城镇化质量百强县市。2019年3月,被列为第一批革命文物保护利用片区分县名单。2019年7月,被列为国家知识产权强县工程示范县(区)。 [6] 2019年10月8日,被评为2019年度全国综合实力百强县市。2020中国夏季休闲百佳县市。 [7] 2020年5月,被国家发展改革委列为县城新型城镇化建设示范名单。
图主要体现了两个操作流程:加入MQ和MQ消费。其中,注意这两个流程是共享同一个MQ的,否则不能共享数据。同时调度是会进行循环式的调度,并且穷极之。
没有引入工厂方法的原因
我们在考虑是否需要提供工厂方法来创建计划任务调度器,或者MQ。但发现,设计是如此明了,不必要再引入工厂方法来增加使用的复杂性,因为存在组合的情况。而且,对于后期客户端进行扩展也不利。
当需要启动一个计划任务时,可以这样写:
$mq = new Task_MQ_Redis();
$runner = new Task_Runner_Local($mq);
$runner->go('MyTask.DoSth');复制代码
上面简单的组合可以有:4种MQ * 2种调度 = 8种组合。所以,我们最后决定不使用工厂方法,而是把这种自由组合的权利交给客户端。
失败重试与并发问题
除了对计划任务使用什么模式进行探讨外,我们还需要关注计划任务其他运行时的问题。
一个考虑的是失败重试,这一点会发生在远程调度中,因为接口请求可能会超时。这时我们采用的是失败轮循重试。即,把失败的任务放到MQ的最后,等待下一批次的尝试。连接器在进行请求时,也会进行一定次数的超时重试。这里主要是为了预防接口服务器崩溃后的计划任务丢失。
另一个则是并发的问题。这里并没有过多地进行加锁策略。而是把这种需要的实现移交给了客户端。因为加锁会使得计划任务更为复杂,而且有时不一定需要使用,如一个计划任务只有一个进程时,也就是单个死循环的脚本进程的情况。
完备的单元测试体系
如果我们未能发现代码中隐藏的问题,或者编写的代码不够优雅,我觉得,要么是因为我们根本尚未使用单元测试,要么是即使应用了单元测试但未频繁使用。来稍微看一下此Task扩展所具备的单元测试体系。对于各种MQ队列,以及两种调度方式都是有对应的单元测试的,而且总入口的测试也有。
$ tree ./Library/Task/Tests/
./Library/Task/Tests/
├── MQ
│ ├── Task_MQ_Array_Test.php
│ ├── Task_MQ_DB_Test.php
│ ├── Task_MQ_File_Test.php
│ ├── Task_MQ_Memcached_Test.php
│ └── Task_MQ_Redis_Test.php
├── Runner
│ ├── Task_Runner_Local_Test.php
│ └── Task_Runner_Remote_Test.php
├── Task_Lite_Test.php
├── Task_Progress_Test.php
├── Task_Runner_Test.php
└── test_env.php
2 directories, 11 files复制代码
在开发扩展类库,包括其他功能开发时,一个比较好的建议是,坚持测试驱动开发,恰当引入设计模式,并小步重构,不断演进。
客户端的使用
最后,客户端的使用就很简单了。
$mq = new Task_MQ_Redis();
$taskLite = new Task_Lite();
$taskLite->add('MyTask.DoSth', array('id' => 888));复制代码
Webchat微信开发扩展
此扩展可用于微信的服务号、订阅号、企业号等功能开发,在PhalApi框架下简单配置即可开发使用。如同Task扩展一样,我们将继续按安装、使用配置、使用的顺序,依次讲解。最后,也会一起来探讨下此扩展类库的核心设计。
Webchat的安装
下载PhalApi-Library扩展库后,将Wechat微信开发扩展目录拷贝到你的项目,如:
$ cp /path/to/PhalApi-Library/Wechat ./PhalApi/Library/ -R复制代码
到此安装完毕!接下是扩展的配置。
Webchat的配置
为了让微信扩展能接收来自微信服务器的信息以及返回信息给用户,需要在./Config/app.php配置文件中追加以下扩展配置。
/**
* 微信扩展 - 插件注册
*/
'Wechat' => array(
'plugins' => array(
Wechat_InMessage::MSG_TYPE_TEXT => array('Plugin_Money', 'Plugin_Menu',),
Wechat_InMessage::MSG_TYPE_IMAGE => array(),
Wechat_InMessage::MSG_TYPE_VOICE => array(),
Wechat_InMessage::MSG_TYPE_VIDEO => array(),
Wechat_InMessage::MSG_TYPE_LOCATION => array(),
Wechat_InMessage::MSG_TYPE_LINK => array(),
Wechat_InMessage::MSG_TYPE_EVENT => array(),
Wechat_InMessage::MSG_TYPE_DEVICE_EVENT => array(),
Wechat_InMessage::MSG_TYPE_DEVICE_TEXT => array(),
),
),复制代码
简单说明一下上面配置的作用,很明显,plugins数组的key对应微信的消息类型,如:文本、位置、语音、图片等;然后是各种消息类型对应的处理的类名,可以有多个,从上到下依次处理。如果觉得配置很多,可以只配置需要用到的消息类型。
Webchat的注册
对于微信的开发,我们通常会单独创建一个项目。即使不另建一个单独的项目,也至少需要创建一个单独的访问入口。参考以下入口代码:
// $ vim ./Public/shop/weixin.php
<?php
// echo $_GET['echostr'];
// die();
if (!isset($GLOBALS['HTTP_RAW_POST_DATA'])) {
die('Access denied!');
}
require_once dirname(__FILE__) . '/../init.php';
//装载你的接口
DI()->loader->addDirs('Shop');
/** ---------------- 微信轻聊版 ---------------- **/
$robot = new Wechat_Lite('YourTokenHere...', true);
$rs = $robot->response();
$rs->output();复制代码
由于微信的访问方式比较独特,在这里不再是简单地进行DI注册即可,我们还要切换到微信下的处理和响应。如上面入口文件中的微信响应,而不再是原来默认的接口响应方式。
东海网络公司哪家好【东海企业网站百度SEO推广公司】东海做网站开发价格、东海淘宝店铺开店装修设计运营、公司网站制作方案流程改版维护费用、东海高端企业网站页面制作设计专业公司需要多少钱
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: https://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878