自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Web 开发前后端分离的前世今生

(1)以前刀耕火种的年代,大多数项目 java 程序员既要处理前端(ajax/jquery/js/html/css等),又要处理后端(java/mysql/oracle等),负担比较重。以 JSP/Servlet 为例,前端工程师做好 HTML 后,需要由后端的 java 工程师来将 HTML 修改成 jsp 页面,页面中充斥着标签、java 表达式和html 代码,比较混乱,而且修改问题需要双方...

2018-12-10 11:05:09 411

原创 Redis 分布式锁的正确编写方式

在不同进程需要互斥地访问共享资源时,在业务中体现为多个实例需要同时访问同一个 redis 的共享资源,分布式锁是一种非常有用的技术手段,我们可以使用 redis 实现它。(1) 为了确保这个 redis(业务里 redis 为单机版) 锁是可用的,需要满足一些条件:    a.互斥性。在任意时刻,只有一个 jedis 客户端能持有锁。    b.不会发生死锁。即使有一个 jedis 客户...

2018-12-10 10:51:44 212

原创 分布式系统统一登录模块设计

维基百科对于单点登录的定义:    单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,当用户登录时,就可以获取所有系统的访问权限,不用对每个单一系统都逐一登录。这项功能通常是以轻型目录访问协议(LDAP)来实现,在服务器上会将用户信息存储到LDAP数据库中。相同的,单一退出(s...

2018-12-10 10:31:35 6897

原创 Java 线程重入的理解

线程安全函数的概念比较直观,众所周知,同一进程的不同线程会共享同一主内存,若要保证线程安全,则必须通过加锁的方式。一旦有一个线程访问某个对象的 synchronized 修饰的方法或代码区域时,该线程则获取这个对象的锁,其他线程不能再调用该对象被 synchronized 影响的任何方法。     如果这个线程自己调用该对象的其他 synchronized 方法,Java 是如何判定的?这...

2018-12-10 10:27:16 677

原创 Redis 的缓存与淘汰机制

Redis 内存淘汰指的是用户存储的一些键被可以被 Redis 主动地从实例中删除     淘汰机制和 Redis 最大占用内存 maxmemory 值以及过期时间 expireTime 紧密相连,典型的例子是:         a.客户端发起了需要申请更多内存的命令(如set)。        b.Redis 检查内存使用情况,如果已使用的内存大于 maxmemory 则开始...

2018-12-10 10:23:24 1623

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除