本期技术周刊一起了解 Java 语言?,欢迎大家阅读 ~
文章推荐
《玩转 Flowable 流程实例》 作者:江南一点雨
今天我们继续来聊聊流程实例。部署之后的流程,这个还不能直接运行,例如我们部署了一个请假流程,现在 zhangsan 想要请假,他就需要开启一个请假流程,lisi 想请假,他也需要开启一个请假流程,这一个一个开启的请假流程就是流程实例,而我们一开始部署的请假流程,则类似于一个模版,基于此模版,我们可以开启很多个具体的流程实例。从这个角度来说,上篇文章我们定义的 ProcessDefinition 就类似于一个 Java 类,今天我们要介绍的 ProcessInstance 则相当于一个 Java 对象。
《Java 反射真正的详解,学以致用,实战案例,虽不及万字,但也已有近 8000 字》作者:宁在春
作为 Java 开发者,你认为反射这个知识点重要程度,在你心里是什么样的呢?
以前我也只觉得反射非常重要,但总归是听这个文章说,听那个朋友说,学是学了,但却没怎么应用。
当我正式进入到社会当 cv 仔的时候,需要考虑的问题多了,慢慢思考问题了,就觉得反射是个力大无穷的东西,更会感觉反射是个无所不能的东西,如各种各样的框架的底层,各种各样的拦截器的实现,反射都是其中少不了的一部分~
如果平时着重于开发业务的话,那么确实会较少使用到反射机制,但并非是说反射它不重要,反射它可是搭建脚手架的基础的基础勒~
《微服务开发系列:开篇》作者:zxdposter
微服务现如今已经是一个被绝大多数开发人员都熟知的概念了。
网上各种微服务开发系列层出不穷,各类的微服务框架也多如牛毛。
但是,在这样一种仿佛没什么必要介绍微服务的时间点,我还是要给出一系列我对于微服务开发的理解。
这些理解并不深奥,这些做法你可能每天都在做,某些地方你可能认为非常基础。
但是在我的理解中,这些很重要,并没有花里胡哨的实现方式,技术的目的,不是为了用繁琐的方法实现简单的目的,而是为了用简单的方法,实现一切目的。
因此我想介绍的框架,一切都是为了方便,方便排查,方便部署,方便开发,它只是一个方便的系统。
这些简单的技巧,朴实的做法,不仅仅为微服务框架提供有益的设计方式,还对一些开发人员的开发习惯和对开发的理解上,也能够有着一些助力。
《使用 elasticsearch 作为唯一存储源问题整理》作者:Martin
首先es不支持事务,所以在架构设计的时候一定要考虑这一点。
特别的,es在生产环境一般不允许使用脚本,更新操作都是在业务Java系统内存中去更新,然后再刷新到es数据库,所以当多个线程并发修改时,只会有最后一条更新成功(其实其他的线程也更新成功了,只是被最后一个线程覆盖了),解决办法是上接口的调用者加分布式锁,或者把请求放到保证串行的消息队列(比如kafka的同一个分区)
《写个续集,填坑来了!关于“Thread.sleep(0)这一行‘看似无用’的代码”里面留下的坑。》作者:why技术
首先非常感谢阅读我文章的朋友,同时也特别感谢阅读的过程中带着自己的思考,提出有价值的问题的朋友,这对我而言是一种正反馈。
我当时写的时候确实没有想到这个问题,所以当突然问起的时候我大概知道原因,由于未做验证,所以也不敢贸然回答。
于是我寻找了这个问题的答案,所以先说结论:
就是和 JIT 编译器有关。由于循环体中的代码被判定为热点代码,所以经过 JIT 编译后 getAndAdd 方法的进入安全点的机会被优化掉了,所以线程不能在循环体能进入安全点。
《Java 开发:实现用户注册登录的功能》作者:三掌柜
在Java开发过程中,实现用户的注册功能是最基本的,用户通过手机号或者邮箱作为注册账号也是非常常见的操作方式,不管是通过手机号注册或者邮箱注册,原理都差不多,那么本文就来分享一下在Java开发过程中的用户注册账号的功能实现。
《Java 并发编程生产应用场景及实战》作者:咕咕鸡
从提升性能角度来说
提升了对CPU的使用效率:目前生产的服务器大多数都是多核,标配的机器都是 8C/16G。操作系统会将不同的线程分配给不同的核心处理,理论上,有多少核心就有多少个线程并行执行。如果没有并发编程,CPU的利用率将极大的浪费,假设当前正在处理耗时的 I/O 操作,那么整个CPU就会处于阻塞空闲状态,后面的指令必须等待前面的执行完才能继续执行。
降低服务 RT:大型互联网访问量轻松每秒轻松过万,如果没有并发处理,所有的用户请求都会排队等待,那种体验效果你能想象么,这样的服务能力如何能留住客户?有了并发编程,充分释放CPU算力,操作系统让每个客户轮流使用CPU计算,每个客户都能得到快速的响应。
容错率高:线程与线程之间的执行不会相互干扰,某个线程执行出现异常退出,不会对其它线程造成影响。
问题推荐
Unanswered:
Most frequent:
- Java继承中,代码执行顺序的问题?
- Java,集合中有两条数据来自远端接口,把远端接口中的数据,合并到集合对象中?
- 业务关系是一对多要分页,并且多的一侧可以作为查询条件,要怎么设计?
- 突然 java和数据库建立连接很慢,但是navicat就秒进。服务器上也开始爆errorCode 0, state 08S01?
- java中返回值是一个泛型(通配符),如何从一个用通配符的对象中取到想要的值?
# SegmentFault 技术周刊 #
「技术周刊」是社区特别推出的技术内容系列,一周一主题。
每周二更新,欢迎「关注」。大家也可以在评论处留言自己感兴趣的主题,推荐主题相关的优秀文章。
如有问题可以添加小姐姐微信~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。