Loading...

摘要: 前言 2018.11.28 IntelliJ IDEA 2018.3 正式版发布。对于一个忠实爱好者,迫不及待的我下载了最新版本来体验下。而且 IDEA 今年的第三次重大更新提供了不容错过的显著功能!你可以访问详细概述的新内容 "What's New" ,或直接访问网站并立即 "下载 Intelli 阅读全文
posted @ 2018-11-26 00:02 JaJian 阅读(17532) 评论(4) 推荐(8) 编辑
摘要: 之前网上看到很多写分布式事务的文章,不过大多都是将分布式事务各种技术方案简单介绍一下。很多朋友看了还是不知道分布式事务到底怎么回事,在项目里到底如何使用。 所以这篇文章,就用大白话+手工绘图,并结合一个电商系统的案例实践,来给大家讲清楚到底什么是 TCC 分布式事务。 首先说一下,这里可能会牵扯到一 阅读全文
posted @ 2018-11-24 23:38 JaJian 阅读(183567) 评论(46) 推荐(95) 编辑
摘要: 简介 Elasticsearch是一个高度可扩展的、开源的、基于 Lucene 的全文搜索和分析引擎。它允许您快速,近实时地存储,搜索和分析大量数据,并支持多租户。 Elasticsearch也使用Java开发并使用 Lucene 作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的 RE 阅读全文
posted @ 2018-11-19 09:04 JaJian 阅读(17316) 评论(9) 推荐(21) 编辑
摘要: 概述 毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。不过大多数讲解还停留在对Spring Cloud功能使用的层面,其底层的很多原理,很多人可能并不知晓。因此本文将通过大量的手绘图,给大家谈谈Spring Cloud微服务架构的底层原理。 实际上,Sp 阅读全文
posted @ 2018-11-17 21:00 JaJian 阅读(26796) 评论(13) 推荐(49) 编辑
摘要: 周末快到了,今天为大家送上一篇很有意思的小文章,具有提神醒脑之功效。作者是来自阿里巴巴 LAZADA 产品技术部的申徒童鞋。 血案由来 近期我在为 Lazada 卖家中心做一个自助注册的项目,其中的 shop name 校验规则较为复杂,要求: 1. 英文字母大小写 2. 数字 3. 越南文 4. 阅读全文
posted @ 2018-11-03 13:13 JaJian 阅读(1391) 评论(0) 推荐(1) 编辑
摘要: 我常常认为程序员是另类的钢琴家,当双手在键盘上跳动的时候,再配合上一个青轴的机械键盘,谱写的就是一个个的曲谱啊。 加班了 “前面左转,拐入宛平南路高架桥,从卢浦大桥走,……”,加班完之后我叫了辆滴滴,已经是凌晨1点了,平时打车我都会看看高架桥上车窗外的灯火和夜景,毕竟黄浦江上灯火璀璨彰显大城市的美丽 阅读全文
posted @ 2018-10-29 09:00 JaJian 阅读(10327) 评论(54) 推荐(86) 编辑
摘要: 导读 大家一提到程序员,首先想到的是以下标签:苦逼,加班,熬夜通宵。但是,但凡工作了的同学都知道,其实大部分程序员做的事情都很简单,代码 CRUD 可以说毫无技术含量,就算什么不懂依葫芦画瓢很多功能也能勉强做出来,做个多线程并发就算高科技了,程序员这行的门槛其实还是比较低的。(这里说的是大部分,有些 阅读全文
posted @ 2018-10-27 15:59 JaJian 阅读(2907) 评论(4) 推荐(7) 编辑
摘要: 最近项目组安排了一个任务,项目中用到了全文搜索,基于全文搜索 Solr,但是该 Solr 搜索云项目不稳定,经常查询不出来数据,需要手动全量同步,而且是其他团队在维护,依赖性太强,导致 Solr 服务一出问题,我们的项目也基本瘫痪,因为所有的依赖查询都无结果数据了。所以考虑开发一个适配层,如果 So 阅读全文
posted @ 2018-10-22 00:03 JaJian 阅读(55869) 评论(12) 推荐(45) 编辑
摘要: 最近碰到一个问题,Client 端连接服务器总是抛异常。在反复定位分析、并查阅各种资料搞懂后,我发现并没有文章能把这两个队列以及怎么观察他们的指标说清楚。 问题描述 场景 :Java 的 Client 和 Server,使用 Socket 通信。Server 使用 NIO。 问题 : 间歇性出现 C 阅读全文
posted @ 2018-10-13 19:11 JaJian 阅读(2958) 评论(1) 推荐(2) 编辑
摘要: 好的博客主题不仅美观大方,而且能促进主人书写的愿望,博主也是个喜欢折腾的人,前前后后对自己现在的博客整容过很多次,动过很多次刀,很多人看我博客都说“博主,你的主题666”。其实我很抱歉啊,因为这主题并不是我原创的。我当时也是逛博客园突然发现了该款主题,然后自己就套用了下,研究了下 js,最后再进行重 阅读全文
posted @ 2018-10-10 00:06 JaJian 阅读(19253) 评论(42) 推荐(148) 编辑
摘要: 当 MySQL 单表记录数过大时,增删改查性能都会急剧下降,本文会提供一些优化参考,大家可以参考以下步骤来优化。 单表优化 除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度。 一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的 阅读全文
posted @ 2018-10-09 02:04 JaJian 阅读(4215) 评论(3) 推荐(3) 编辑
摘要: 为什么要使用函数式编程 函数式编程更多时候是一种编程的思维方式,是种方法论。函数式与命令式编程的区别主要在于:函数式编程是告诉代码你要做什么,而命令式编程则是告诉代码要怎么做。说白了,函数式编程是基于某种语法或调用API去进行编程。例如,我们现在需要从一组数字中,找出最小的那个数字,若使用用命令式编 阅读全文
posted @ 2018-10-08 21:41 JaJian 阅读(1956) 评论(2) 推荐(2) 编辑
摘要: 介绍 今天我们将研究java中的Builder模式。Builder 设计模式是一种创造性的设计模式,如工厂模式和抽象工厂模式。 当Object包含许多属性时,引入了Builder模式来解决Factory和Abstract Factory设计模式的一些问题。 当Object包含许多属性时,Factor 阅读全文
posted @ 2018-10-07 00:37 JaJian 阅读(1291) 评论(1) 推荐(1) 编辑
摘要: 介绍 观察者模式是行为设计模式之一。当您对对象的状态感兴趣并希望在有任何更改时收到通知时,观察者设计模式非常有用。在观察者模式中,监视另一个对象状态的对象称为Observer,正在被监视的对象称为Subject。 根据GoF,观察者设计模式的意图是; 定义对象之间的一对多依赖关系,以便当一个对象更改 阅读全文
posted @ 2018-10-06 00:29 JaJian 阅读(1577) 评论(0) 推荐(2) 编辑
摘要: 责任链设计模式是行为设计模式之一。 责任链模式用于在软件设计中实现松散耦合,其中来自客户端的请求被传递到对象链以处理它们。然后链中的对象将自己决定谁将处理请求以及是否需要将请求发送到链中的下一个对象。 JDK中的责任链模式示例 让我们看一下JDK中责任链模式的例子,然后我们将继续实现这种模式的真实例 阅读全文
posted @ 2018-10-05 00:21 JaJian 阅读(3554) 评论(1) 推荐(5) 编辑
摘要: 介绍 策略设计模式是行为设计模式之一。当我们为特定任务使用多个算法时,使用策略模式,客户端决定在运行时使用的实际实现。 策略模式的最佳示例之一是Collections.sort()采用Comparator参数的方法。基于Comparator接口的不同实现,对象将以不同的方式进行排序。 实例 对于我们 阅读全文
posted @ 2018-10-04 11:29 JaJian 阅读(2365) 评论(1) 推荐(1) 编辑
摘要: 前言 国内程序员好像普遍对百度都没好感,而且百度近些年产生了不少负面的新闻,像16年的魏则西事件,近期的导演吴京黑白照事件,以及最近作家六六斥百度李彦宏:“你是做搜索引擎还是骗子首领”,还有一件就是与程序员有关的:搜索Julia语言,在百度和Google得出首条搜索结果的差异性而被吐槽。Google 阅读全文
posted @ 2018-10-03 00:04 JaJian 阅读(1241) 评论(1) 推荐(1) 编辑
摘要: 今天看了部特工电影,里面有个桥段,主角在直升机上和反派生死搏斗,而飞机则是无人驾驶的状态,有坠毁的危险。生死存亡,危急时刻主角让团队成员去驾驶,而团队成员很慌张地说:“Hey, man,你开什么国际玩笑,我只拿到了汽车的驾照,飞机驾照我可没有?…”,主角则在远处淡定的说:“那你就当它是汽车好了”。如 阅读全文
posted @ 2018-10-02 00:15 JaJian 阅读(1455) 评论(1) 推荐(1) 编辑
摘要: 2018国庆黄金周来了,恰值国庆黄金周节假日,我想高速上一定车山车海,还好我选择了高铁,不然肯定需要寻找项目合作人或在高速上吃创业人士的炒饭炒面了。 国庆7天长假,天气又如此的好,所谓风和日丽,如此良辰美景,回家的你一定会发现路上结婚的车队是来来往往,特别是领头的婚车,鲜花与气球给装饰的是大气,豪华 阅读全文
posted @ 2018-10-01 16:27 JaJian 阅读(1996) 评论(1) 推荐(3) 编辑
摘要: 实际开发中常常会遇到,代码骨架类似甚至相同,只是具体的实现不一样的场景。例如:流程都有开启、编辑、驳回、结束。每个流程都包含这几个步骤,不同的是不同的流程实例它们的内容不一样。共享单车都是先开锁、骑行、上锁、付款。这些大的步骤固定,不同的是每个实例的具体实现细节不一样。这些类似的业务我们都可以使用模 阅读全文
posted @ 2018-09-30 15:42 JaJian 阅读(2714) 评论(4) 推荐(5) 编辑