- 浏览: 166799 次
- 性别:
- 来自: 深圳
最新评论
-
yuanzhongcheng:
都是废话,这些谁不知道啊,不是所有题都能靠以往的经验解决的,有 ...
数学思想方法揭秘-3(原创) -
maetrive:
很不错!
轻量流程引擎接口设计 -
maetrive:
很不错!
面向业务接口的业务事件交付 -
maetrive:
好文
事件驱动的轻量级流程引擎 -
liangzai_bj:
是我的配置有问题,我重新按博主的博客配置了下,不报错了!
hadoop hue开发调试环境搭建
文章列表
<<软件架构分解>>重新发表
- 博客分类:
- 软件架构
<<软件架构分解>> 一文2013年发表在IBM developerWorks中国网站,由于该网站2021年关闭,故重新发表在简书,网址https://www.jianshu.com/p/45624c627e22。
创作涵盖小初高的数学思想方法书籍,内容已经得到知名高端数学书籍编辑部(哈工大刘培杰数学工作室)认可。
具体内容在简书网站上,点击查看:关于数学思想方法书籍写作。
微服务、中台思想、区块链是软件行业的热词,这些词汇有一种铺天盖地的感觉,交流时没有涉及到这些似乎难以启齿,但真的懂了这些背后的本质和来龙去脉而不是人云亦云?
微服务
先说微服务,它似乎是一颗新的救命稻草和银弹,不管它是否适用都往上扯。微服务真的是前所未有的新技术新概念?其实不是,微服务就是SOA服务化中的细粒度服务而已,不是啥新技术。在微服务这个热词出现之前,根据实际需要,在系统架构设计中拆分出细粒度的服务是很平常的事情。服务注册服务发现、服务注册中心、服务网关、服务治理、限流熔断等都是很早就有,也不是啥新鲜玩意。
在架构设计中对系统做适当粒度的拆分(分解)才是 ...
数学思想方法揭秘-3(原创)
- 博客分类:
- 数学思想方法
作者:王国波
已停止维护,阅读请移步本人简书网站数学思想方法揭秘-3-1(原创)
阅读顺序,建议从本系列第一篇看起。
接前文数学思想方法揭秘-2,在这里讲述我对这些题的解题思维过程,主要是在思维过程中如何运用数学思想方法和解题策略来探索解题方法,所思所想。学习者可以先试着做一做数学思想方法揭秘-2中的题,再对比下面的思维过程,多揣摩领会解题思维过程中的思想精髓,看不懂就多读几遍,直到自己有会心一笑心领神会的感觉为止。以后就可有意识的进行模仿。在以后的题目中只要有一两道题有成功的运用经验,就入门有共鸣了,就把这些消化融入到自己的知识体系中了,后面运用起来就 ...
数学思想方法揭秘-2(原创)
- 博客分类:
- 数学思想方法
作者:王国波
接前文数学思想方法揭秘-1,这篇是小学、初中、高中的几道数学题,都是我最近两三年利用业余时间教家里孩子和其他孩子做的题,有小、初、高的学生,绝大多数是奥数或其他类型的数学竞赛题。当时没注意保存原题和解题过程草稿纸,手机图片也清掉了,只有少数题还能找到当时的纸张。以后注意保存收集,可以出几本小、初、高真材实料的数学思维训练书籍。在数学思想方法揭秘-3中将讲述我对这些题的解题思维过程,当时的所思所想,主要是在思维过程中如何运用数学思想方法和解题策略来探索解题突破口和解题方法。
这次就用这少数几道题来演示下思维过程,管中窥豹,也兑现我对一些家长说过要写几篇数学思想启蒙的文章。让 ...
数学思想方法揭秘-1(原创)
- 博客分类:
- 数学思想方法
作者:王国波
本系列在iteye上已停止维护,完整系列在本人简书网站数学思想方法揭秘-1(原创)。
本系列适合有志于在数学上悟大道的人士,作为数学思想方法论的启蒙。上士闻道勤而行之,要静下心来多实践多领 ...
反应式编程ppt
给公司开发同学培训反应式编程写的ppt,讲的主要是反应式编程中的难点重点。涉及反应式编程的概念、RxJava2、Spring Reactor,Spring5 webflux等。
api网关作为反向代理,对外部系统提供统一的服务访问入口,对请求进行鉴权限流等访问控制处理,通过后将请求路由转发给后端服务。在高并发和潜在的高延迟场景下,api网关要实现高性能高吞吐量的一个基本要求是全链路异步,不要阻塞线程。spring cloud zuul网关采用同步阻塞模式不符合要求。
先前基于servlet,采用异步servlet filter + 异步servlet+servlet异步io+异步httpclient做过全链路异步http/rest api网关,要强调的是使用异步servlet后只是流程上异步,并不意味着io这块自动就是异步,还要使用servlet异步i ...
spring webflux视图forward
- 博客分类:
- 开发
Spring5基于Spring Reactor3支持反应式编程(reactive programing),在其spring-webflux模块中提供反应式web开发,它又可分为两种风格的编程api:类似于spring-webmvc基于注解的controller风格和函数式风格。
我们知道,对视图forward,在spring-webmvc controller的处理器方法中返回类似“forward:xx”的字符串即可将请求forward到xx url上。目前在webflux中如果要forward http请求,目前只有采用webfilter,在前面的文章spring ...
spring webflux过滤器
- 博客分类:
- 开发
spring5 webflux模块中的webfilter模型与其他过滤器或拦截器是类似的,众多filter可以组成过滤链,过滤器链的图示就不画了。
webflux filter目前没有servlet filter中的url pattern功能,它对所有请求进行过滤,如果要实现url pattern可以自己在过滤器中匹配url。
过滤器的调用顺序
如果有多个webflux webfliter,那其调用的先后顺序如何确定?在过滤链中的调用顺序遵循如下规则:
1.webfilter实现类上有@Order注解的排在没有该注解的前面.
2. ...
socket编程:同步异步与阻塞非阻塞的辨析
- 博客分类:
- 网络编程
1.socket io同步异步/阻塞非阻塞的概念和本质区别
异步操作相比同步操作可以提高应用的响应性和cpu的利用率,增大应用吞吐量。在socket编程中也存在异步io和同步io,再加上阻塞和非阻塞这些,这两组概念碰到一起,很容易让人混淆,搞不清楚同步异步和阻塞非阻塞这两组概念的本质区别。
其实在W. Richard Stevens的《UNIX网络编程》(第1卷) 第6章第6.2节io模型中对这些讲的比较清楚了。
socket
restful风格的api相当流行了,但很多开发人员对restful并没有深入理解,这几年面试了很多人,对restful的理解都很肤浅,好一点的也只知道统一资源接口,很多连表示层状态转移的涵义到底是什么,‘’转移‘’到底是什么意思都不知道。
相比远程过程调用(动词),restful的核心概念是资源(名词),大致可以对应领域驱动设计或领域模型中的领域实体,每个资源都有uri来标识。
restful介绍或restful api设计最佳实践网上资料已经很多了,例如什么是状态转移、uri中不要用动词或也不要带.do或.action等后缀、uri的可读性&层次性 ...
读写分离情况下的读自己写一致性
- 博客分类:
- 开发
问题
分布式系统的一致性模型包括:强一致性、弱一致性、最终一致性,以及一些最终一致性的变种,如因果一致性、读自己写一致性等。
有个项目,数据存放在主从同步的mysql数据库中,写操作统一落在主库上。由于主从数据库物理位置相距较远(分别在国内机房和国外机房),同步的网络延迟较大,所以有可能因为网络延迟的原因,在读写分离的情况下,读不到自己刚才所写的数据(读从库)。例如用户在国外机房的应用中写完数据后,在延迟时间窗口内立即读,此时写数据还未同步到从库,读从库失败。也就是通常的读写分离方案在这种场景下解决不了读自己写一致性问题。读自己写一致性中的‘自己’可以是进程或系统、也可以是用户。在我们的 ...
还在沉迷于node.js、play framework、akka?你out了!该试试vert.x了。vert.x是一个用于构建运行在jvm上的响应式应用的工具箱和分布式应用开发平台。目前最新版本是3.X,相比2.0版本已经成熟很多了。
vert.x的特性
1.多语言:除了java语言外,还支持javascript、ruby、python、scala、groovy、clojure、php
等动态语言,这个很大程度归功于JVM对动态语言的支持。vert.x中的x即表示多语言的意思。可以用这些语言来开发基于vert.x的应用,也可在一个应用中混合多种语言,例如在一个jvm中混合 ...