摘要:一款简单干净的博客园主题,代码 Github 地址: "cnblog theme simpcode" ,示例博客: "noobgod" 。 一、准备 在开始之前,必须要确保你已经申请了博客园 JS 权限,具体申请过程就不详细介绍了,读者自行网上搜索,很简单的。 本皮肤如果经常逛博客的读者应该很熟悉, 阅读全文
posted @ 2019-06-11 09:03 JaJian 阅读 (1659) 评论 (7) 编辑
摘要:好的博客主题不仅美观大方,而且能促进主人书写的愿望,博主也是个喜欢折腾的人,前前后后对自己现在的博客整容过很多次,动过很多次刀,很多人看我博客都说“博主,你的主题666”。其实我很抱歉啊,因为这主题并不是我原创的。我当时也是逛博客园突然发现了该款主题,然后自己就套用了下,研究了下 js,最后再进行重 阅读全文
posted @ 2018-10-10 00:06 JaJian 阅读 (3360) 评论 (16) 编辑
摘要:前言 最近在学习 Go 语言,Go 语言中有指针对象,一个指针变量指向了一个值的内存地址。学习过 C 语言的猿友应该都知道指针的概念。Go 语言语法与 C 相近,可以说是类 C 的编程语言,所以 Go 语言中有指针也是很正常的。我们可以通过将取地址符 放在一个变量前使用就会得到相应变量的内存地址。 阅读全文
posted @ 2019-08-12 09:11 JaJian 阅读 (411) 评论 (1) 编辑
摘要:之前已经分享过Elasticsearch的使用和原理的知识,由于近期在公司内部做了一次分享,所以本篇主要是基于之前的博文的一个总结,希望通过这篇文章能让读者大致了解Elasticsearch是做什么的以及它的使用和基本原理。 生活中的数据 搜索引擎是对数据的检索,所以我们先从生活中的数据说起。 我们 阅读全文
posted @ 2019-07-22 09:32 JaJian 阅读 (1145) 评论 (8) 编辑
摘要:传统的单体架构的时候,我们基本是单库然后业务单表的结构。每个业务表的ID一般我们都是从1增,通过 设置自增起始值,但是在分布式服务架构模式下分库分表的设计,使得多个库或多个表存储相同的业务数据。这种情况根据数据库的自增ID就会产生相同ID的情况,不能保证主键的唯一性。 如上图,如果第一个订单存储在 阅读全文
posted @ 2019-07-08 09:00 JaJian 阅读 (1938) 评论 (9) 编辑
摘要:由于近年来的移动端的发展和 2C模式 的红利,一些在风口的企业的业务得到爆发式增长。从架构层面来说,业务驱动技术的变革,所以微服务架构的概念得到很多企业的青睐,因为可以解决服务的大流量和高并发以及稳定性的要求。 但是任何架构设计不是一蹴而就的,不能从起步就开始使用微服务,一般都是先通过单体架构来快速 阅读全文
posted @ 2019-07-02 15:21 JaJian 阅读 (1135) 评论 (2) 编辑
摘要:最近在公众号号上看到了一篇文章,读后蛮有感触的,程序员常常因为走技术还是管理两个方向而犹豫不决,希望通过以下文章的分享对大家有所思考,以下是作者原文。 熟悉我的人都知道,我有位从事猎头工作的老婆,平时的工作是专为某些医疗、金融投资机构提供中、高级岗位职位人才招聘及相关咨询服务。 相比之下,这项工作对 阅读全文
posted @ 2019-06-26 18:03 JaJian 阅读 (524) 评论 (1) 编辑
摘要:前言 我们程序员在开发的时候经常会遇到各种各样的 BUG 问题,其中大部分是业务逻辑异常,还有一些是代码书写不规范造成的异常例如:NullPointException(NPE),IndexOutOfBoundsException 等等,其实这些我们都好定位和修复。但是还有一些运行时异常定位起来是特别 阅读全文
posted @ 2019-06-12 09:09 JaJian 阅读 (2114) 评论 (1) 编辑
摘要:一款简单干净的博客园主题,代码 Github 地址: "cnblog theme simpcode" ,示例博客: "noobgod" 。 一、准备 在开始之前,必须要确保你已经申请了博客园 JS 权限,具体申请过程就不详细介绍了,读者自行网上搜索,很简单的。 本皮肤如果经常逛博客的读者应该很熟悉, 阅读全文
posted @ 2019-06-11 09:03 JaJian 阅读 (1659) 评论 (7) 编辑
摘要:业务场景 在单机系统中,用户登陆之后,服务端会保存用户的会话信息,只要用户不退出重新登陆,在一段时间内用户可以一直访问该网站,无需重复登陆。用户的信息存在服务端的 session 中,session中可以存放服务端需要的一些用户信息,例如用户ID,所属公司companyId,所属部门deptId等等 阅读全文
posted @ 2019-06-03 08:31 JaJian 阅读 (815) 评论 (3) 编辑
摘要:业务场景 公司有个借贷的项目,具体业务类似于阿里的蚂蚁借呗,用户在平台上借款,然后规定一个到期时间,在该时间内用户需将借款还清并收取一定的手续费,如果规定时间逾期未还上,则会产生滞纳金。 用户发起借款因此会产生一笔借款订单,用户可通过支付宝或在系统中绑定银行卡到期自动扣款等方式进行还款。还款流程都走 阅读全文
posted @ 2019-05-27 08:57 JaJian 阅读 (1194) 评论 (8) 编辑
摘要:业务场景 近年来B2C、O2O等商业概念的提出和移动端的发展,使得分布式系统流行了起来。分布式系统相对于单系统,解决了流量大、系统高可用和高容错等问题。功能强大也意味着实现起来需要更多技术的支持。例如系统访问层的负载均衡,缓存层的多实例主从复制备份,数据层的分库分表等。 我们以负载均衡为例,常见的负 阅读全文
posted @ 2019-05-23 09:52 JaJian 阅读 (1019) 评论 (0) 编辑
摘要:需求缘起 Web Server通常有个配置,最大工作线程数,后端服务一般也有个配置,工作线程池的线程数量,这个线程数的配置不同的业务架构师有不同的经验值,有些业务设置为CPU核数的2倍,有些业务设置为CPU核数的8倍,有些业务设置为CPU核数的32倍。 “工作线程数”的设置依据是什么,到底设置为多少 阅读全文
posted @ 2019-05-14 15:20 JaJian 阅读 (588) 评论 (1) 编辑
摘要:前言 创建索引的时候,我们通过Mapping 映射定义好索引的基本结构信息,接下来我们肯定需要往 ES 里面新增业务文档数据了,例如用户,日志等业务数据。新增的业务数据,我们根据 Mapping 来生成对应的 倒排索引 信息 。 我们一直说,Elasticsearch是一个基于Apache Luce 阅读全文
posted @ 2019-05-13 09:02 JaJian 阅读 (834) 评论 (0) 编辑
摘要:学习的需要 这篇文章不做技术分享,和大家一起讨论一下学习的途径和方法。程序员行业技术更新迭代速度快,这个特点身为行业内的每个猿友们都有深刻体会。 很多技术基本每年都有一个大小版本,每个版本的出现意味着有新的技术思想和应用技巧出现。也许你用不到但是你需要去了解。你看自从甲骨文公司宣布收购Sun公司,J 阅读全文
posted @ 2019-04-10 07:43 JaJian 阅读 (3565) 评论 (21) 编辑
摘要:前言 处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及Full GC次数过多的问题。当然,这些问题的最终导致的直观现象就是系统运行缓慢,并且有大量的报警。 本文主要针对系统运行缓慢这一问题,提供该问题的排查思路,从而定位出问题的代码点,进而提供解决该问题的思路。 对于线上系 阅读全文
posted @ 2019-03-22 15:35 JaJian 阅读 (846) 评论 (0) 编辑
摘要:硬件选择 Elasticsearch(后文简称 ES)的基础是 Lucene,所有的索引和文档数据是存储在本地的磁盘中,具体的路径可在 ES 的配置文件 中配置,如下: 磁盘在现代服务器上通常都是瓶颈。Elasticsearch 重度使用磁盘,你的磁盘能处理的吞吐量越大,你的节点就越稳定。这里有一些 阅读全文
posted @ 2019-03-11 10:44 JaJian 阅读 (2606) 评论 (4) 编辑