左手java右手go

13
获赞数
2
关注数
16
粉丝数
深圳
IP 属地广东
2016-08-01 加入
浏览 5.6k

关注java和golang技术栈

38 声望|新手
elasticsearch
33
源码分析
22
源码
8
框架
8
go
5
黄金勋章
暂未获得该勋章
如何获得
白银勋章
暂未获得该勋章
如何获得
1 青铜勋章
个人动态
  • 发布了文章2023-08-15
    Java后端实战项目推荐-Netty+Nacos+Disruptor自研企业级API网关
    ​ 大部分一线开发人员自研开发能力都比较薄弱,导致难进大厂或晋升受阻,进而阻碍了个人的职业发展。为此,慕课网重磅推出自研网关课程,课程将带你系统掌握自研网关的完整流程,并手把手实践与落地整套方法论,助力你成为自研组件高手,过程中综合运用“三高”主流技...
  • 赞了文章2020-08-25
    阿里的秒杀系统是怎么设计的?
    我之前写过一个秒杀系统的文章不过有些许瑕疵,所以我准备在之前的基础上进行二次创作,不过让我决心二创秒杀系统的原因是我最近面试了很多读者,动不动就是秒杀系统把我整蒙蔽了,我懵的主要是秒杀系统的细节大家都不知道,甚至不知道电商公司一个秒杀系统的组成部分。
  • 赞了文章2019-07-22
    领域驱动设计 (DDD) 的思考
    打开 DDD 相关的书籍,你会被一系列生硬、高深的概念充斥,拜读完毕,满头雾水。这不是你的问题,而是 DDD 本身的问题,表现形式太概念化。学习它的内核,就不要被它给出的概念所迷惑,而要去思索这些概念背后所蕴含的设计原则,多问一些为什么,本质无外乎是 SOLID...
  • 赞了文章2019-05-16
    OPPO数据中台之基石:基于Flink SQL构建实数据仓库
    作者 | 张俊本文整理自 2019 年 4 月 13 日在深圳举行的 Flink Meetup 会议,分享嘉宾张俊,目前担任 OPPO 大数据平台研发负责人,也是 Apache Flink contributor。本文主要内容如下:
  • 赞了文章2019-04-17
    MySql错误:ERROR 1449 (HY000)
    笔者系统为 mac ,不知怎的,Mysql 竟然报如下错误: {代码...} 一时没有找到是什么操作导致的这个错误。然后经过查询,参考文章解决了问题。 登录 {代码...} 修改 {代码...} 更新 {代码...} 重新登录之后,服务恢复正常。
  • 发布了文章2019-02-17
    从零搭建精准运营系统
    平台运营到一定阶段,一定会累积大批量的用户数据,这些用户数据是运营人员的黄金财产。而如何利用用户的数据来做运营(消息推送、触达消息、优惠券发送、广告位等),正是精准运营系统需要解决的问题。本文是基于信贷业务实践后写出来的,其它行业如保险、电商、航...
  • 赞了文章2019-01-17
    有赞业务对账平台的探索与实践
    根据CAP原理,分布式系统无法在保证了可用性(Availability)和分区容忍性(Partition)之后,继续保证一致性(Consistency)。我们认为,只要存在网络调用,就会存在调用失败的可能,系统之间必然存在着长或短的不一致状态。在服务化流行的今天,怎样及时发现系统服...
  • 赞了文章2019-01-12
    三年半Java后端面试经历
    都知道鹅厂是cpp的主战场,而以cpp为背景的工程师大都对os,network这块要求特别高,不像是Java这种偏重业务层的语言,之前面试Java的公司侧重还是在数据结构、网络、框架、数据库和分布式。所以OS这块吃的亏比较大
  • 赞了文章2019-01-11
    Java8(1):当 Lambda 遇上受检异常
    Files.walk(Path) 在 JDK1.8 时添加,深度优先遍历一个 Path (目录),返回这个目录下所有的 Path(目录和文件),通过 Stream<Path> 返回;
  • 赞了文章2019-01-10
    教你MySQL Binlog实用攻略
    binlog是Mysql sever层维护的一种二进制日志,与innodb引擎中的redo/undo log是完全不同的日志;其主要是用来记录对mysql数据更新或潜在发生更新的SQL语句,并以”事务”的形式保存在磁盘中;
  • 发布了文章2019-01-10
    golang条件编译
    golang中没有类似C语言中条件编译的写法,比如在C代码中可以使用如下语法做一些条件编译,结合宏定义来使用可以实现诸如按需编译release和debug版本代码的需求
  • 发布了文章2019-01-10
    修改golang源代码实现无竞争版ThreadLocal
    书接上文 修改golang源代码获取goroutine id实现ThreadLocal。上文实现的版本由于map是多个goroutine共享的,存在竞争,影响了性能,实现思路类似java初期的ThreadLocal,今天我们借鉴现代版java的ThreadLocal来实现。
  • 发布了文章2019-01-10
    修改golang源代码获取goroutine id实现ThreadLocal
    golang在http.Request中提供了一个Context用于存储kv对,我们可以通过这个来存储请求相关的数据。在请求入口,我们把唯一的requstID存储到context中,在后续需要调用的地方把值取出来打印。如果日志是在controller中打印,这个很好处理,http.Request是作为入参的。...
  • 发布了文章2019-01-10
    golang源码安装时fatal error: MSpanList_Insert错误
    网上没搜到好的解决办法,最后把 GOROOT_BOOTSTRAP 指向go1.9的安装目录解决。(默认的GOROOT_BOOTSTRAP是指向go1.4的)
  • 发布了文章2019-01-10
    玩转Elasticsearch源码-ActionModule启动分析
    org.elasticsearch.action.ActionModule主要维护了请求和响应相关组件,它们可能来自ES本身或者来自plugin。
  • 发布了文章2019-01-10
    玩转Elasticsearch源码-一图看懂ES启动流程
    org.elasticsearch.bootstrap.Elasticsearch: 启动入口,main方法就在这个类里面,执行逻辑对应图中绿色部分
  • 发布了文章2019-01-10
    玩转Elasticsearch源码-Elasticsearch构建任务简析
    作为 玩转Elasticsearch源码 系列第二篇,先介绍下分析思路,本系列不会直接进入代码执行流程,而是先从Elasticsearch源代码的工程结构,构建任务等入手,按照先整体脉络,后细节的方式进行。
  • 赞了文章2019-01-09
    Lucene系列(一)代码结构
    最近一直在看Lucene的源码和文档,把看到的一些东西总结一下,整个Lucene的代码也大体的撸了一遍了,Lucene的代码写得真是不错,结构简单明了,扩展性也非常强,基本上所有的模块都是接口型的,几乎都有扩展的可能,并且可以以非侵入式的方式进行扩展,后来的在Lucen...
  • 发布了文章2019-01-09
    玩转Elasticsearch源码-使用Intellij IDEA和remote debug调试源代码
    学习源码第一步就是搭建调试环境,但是看了网上大部分Elasticsearch调试方式都是配置各种环境变量然后直接启动Main方法,而且还各种报错。今天提供新的方式--remote debug来避免这些麻烦。