前言 在前两次的 cicada 版本中其实还不支持读取配置文件,比如对端口.路由的配置. 因此我按照自己的想法创建了一个 issue ,也收集到了一些很不错的建议. 最终其实还是按照我之前的想法来做了这个配置管理. 同时将 cicada 升级到了 v1.0.2. 目标 在做之前是要把需求想好,到底怎样的一个配置管理是对开发人员来说比较友好的? 我认为有以下几点: 可以自定义配置,并且支持不同的环境(开发.测试.生产). 使用灵活.对使用者来说不要有太多的束缚. 理论上来说配置这个东西应当完全独立…
前言 两天前写了文章<「造个轮子」--cicada(轻量级 WEB 框架)> 向大家介绍了 cicada 之后收到很多反馈,也有许多不错的建议. 同时在 GitHub 也收获了 80 几颗 小♥♥(绝对不是刷的..) 也有朋友希望能出一个源码介绍,本文就目前的 v1.0.1 版本来一起分析分析. 没有看错,刚发布就修复了一个 bug,想要试用的请升级到 1.0.1 吧. 技术选型 一般在做一个新玩意之前都会有技术选型的过程,但这点在做 cicada 的时候却异常简单. 因为我的需求是想提供一个…
原文地址: haifeiWu和他朋友们的博客 博客地址:www.hchstudio.cn 欢迎转载,转载请注明作者及出处,谢谢! 服务端开发都会或多或少的涉及到 RPC 的使用,当然如果止步于会用,对自己的成长很是不利,所以楼主今天本着知其然,且知其所以然的精神来探讨一下 RPC 这个东西. child-rpc模型 child-rpc 采用 socket 直连的方式来实现服务的远程调用,然后使用 jdk 动态代理的方式让调用者感知不到远程调用. child-rpc 开箱使用 发布服务 RPC 服…
仓库:215566435/rectx 前言 麻烦快去我的仓库里面喷: 老子学不动了,求不要更新. 呵呵,你没想到吧,这玩意儿竟然有第三集!我靠,我自己都没想到,让我们悄悄的回顾一下前两集完全没想到,竟然会有第二集! 我厌倦了 Redux,那就造个轮子 Rectx 第二集: immutable 痛点分析 第一集在这里:我厌倦了Redux,那就造个轮子:Rectx 算了,我都懒得写了,自己看吧,当然不看也无所谓,正式开始. 新的 Rectx 有什么不同? a light-weight state m…
最近 SpringFox 3.0.0 发布了,距离上一次大版本2.9.2足足有2年多时间了.可能看到这个名字,很多读者会有点陌生.但是,只要给大家看一下这两个依赖,你就知道了! <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>3.0.0</version> <scope&…
这个是转载自:http://www.cnblogs.com/keyindex/archive/2012/08/11/2634005.html(那个比较容易忘记,希望博主不要生气的) 前言 本文假定读者对 HttpModule .HttpHandler和IIS的处理流程有一定的了解,如果为了解可以参考以下链接.文中大部分代码通过Reflector反编译  System.Web.dll 得到,.net 版本为4.0 IIS 5.0 和 6.0 的 ASP.NET 应用程序生命周期概述 IIS 7.0…
前言 俗话说 「不要重复造轮子」,关于是否有必要不再本次讨论范围. 创建这个项目的主要目的还是提升自己,看看和知名类开源项目的差距以及学习优秀的开源方式. 好了,现在着重来谈谈 cicada 这个项目的核心功能. 我把他定义为一个快速.轻量级 WEB 框架:没有过多的依赖,核心 jar 包仅 30KB. 也仅需要一行代码即可启动一个 HTTP 服务. 特性 现在来谈谈重要的几个特性. 当前版本主要实现了基本的请求.响应.自定义参数以及拦截器功能. 功能虽少,但五脏俱全. 在今后的迭代过程中会逐渐…
背景 对于dva这个开发框架,国内从事react的前端工程师多半不会感到陌生,dva完善的开发体系和简单的api,让其被广泛运用到实际工作中.我所在的公司也是长期使用dva作为基础的开发框架,虽然好用,但是随着前端技术的飞速发展,dva似乎陷入停滞了,从npm官网上看其发版情况看,正式版本2.4.1是三年前发布的,最近一次是2.6.0-beta.22版本,也是半年前发布的,因此 附录[2]文章中指出dva未来不确定性高的隐患.除此之外,关于dva的effect是否能支持async/await的讨…
前戏 我是16年入了前端的坑,17年知道了gulp和rollup这两个玩意儿.由于那时webpack势头很猛,便一直没有正眼瞧过它一眼. 直到20年进了一家小公司,做了很多类似的小项目,相同的代码拷来拷去,出现一个bug一堆项目都要改,实在恶心到我了. 于是不得不开始考虑将一些公共的方法和组件提取出来,做成一个第三方库来维护.而在库的封装方面,rollup相对于webpack具有一定的优势. 在此,便和大家分享一下如何自己造轮子,封装一个前端库并发布到npm仓库中去. 源码 这是我自己封装的3个…
GraphScheduleEngine是什么: GraphScheduleEngine是一个基于DAG图的任务流引擎,不同语言编写.运行于不同机器上的模块.程序,均可以通过订阅GraphScheduleEngine的消息来启动.运行.结束自身的任务. 开发GraphScheduleEngine的初衷: 在数据挖掘.推荐引擎的离线计算等任务中,会涉及诸多的子任务,每个子任务之间通常还存在着复杂的依赖关系,各个任务之间构成一个有向无环图DAG,如图一所示: 同时基于大数据平台和并行化处理,我们希望尽…