实在抱歉,暂时没来得及写完,您可以看看隔壁Pinecone C/C++, 技术和功能相差不大!
Pinecone C/C++ https://docs.nutgit.com/docs/nuts_pinecone_cpp
相关开源代码(时间实在不够,不完整抱歉,本来想放私人的Git系统上的,实在没搭建完)
https://github.com/DR-Undefined/OpenSauronEyes
https://github.com/DR-Undefined/OpenNonaron (目前只有上传C++版本,JAVA后续再处理)
a. 其中Java在容器上,就没有必要大面积重复造轮子了,主要是实现了LinkedTreeMap、LinkedMultiValueMap、LinkedCaseInsensitiveMap等一系列装饰性容器。
b. 同理工具库,主要实现是JSON5库(这个对很多应用层高级库实现很必要)、反射库、数据库操作库等一些实用性库,DOM类库等一下其他工具库JAVA,JDK已经非常棒了,而且有非常完善的第三方支持库,就没有必须再写一遍了,其次因为C++都实现过一遍了,重新大面积把Pinecone C++移植到JAVA光测试就要命!
具有特色的扩展库
Pinecone Summer,SummerMVC (这个C++下也有), JAVA这边肯定要更接JAVA气,也支持注解开发,但是与Spring不同的是Summer更倾向于类似PHP的全局调用,也就说总体基于模板模式,每一个控制器都可以直接访问$_POST、$_GET、$_FILES这种,也可以类似Spring 使用 Request, Response.
举个栗子,可以使用 $_GSC (类似$_GET但进行了反SQL注入等安全处理), 您可以直接像PHP一样操作Map化的QueryString.
支持类似ThinkPHP 的自动路由转发,如一个类级别控制器的方法可以是子控制器,支持QueryStirng的路由转发如 ‘?do=xxx&xxx’的风格
同时支持Spring的显式路由路径标注、控制器标注
显式路由路径标注
Pinecone Hydra (九头蛇分布式支持库) (该框架起步很晚,暂不完善)
主要是为Sauron项目设计的,支持分布式爬虫、分布式通信等功能,可以兼容SpringBoot等Spring家族。(C++也有)
与之相关的介绍文档:https://docs.nutgit.com/docs/hazelnut_sauron_zh_cn/hazelnut_sauron_zh_cn-1etgmecetkes8
分布式爬虫相关
分布式消息控制系统
公平、可定制的Channel池
Channel池(支持策略模式和适配器自定义优先策略)、基于LinkedTreeMap, 支持同时优先队列、顺序队列和去重操作,在非确定生产者-消费者条件下,同时完成去重、PriorityQueue、LinkedQueue, 支持强制同步和异步消息
类似快递、快递员、包裹的统一消息分发系统
Last editor:undefined Update time:2023-07-29 19:19