快乐学习
一个网站喵查铺子(catpuzi.com)全搞定~
对分布式任务系统进行初步调研,选择适合项目的开源框架。任务调度器可以被抽象为三类元素:Job、Trigger、Scheduler。
quartz
java实现的工业标准级别的定时任务调度器,常见的、最火的解决方案之一。
maven最后更新时间:2019年10月
并行:concurrent属性默认值为true,作业可并发调度,若为false,则不允许并发调度……继续阅读 »
延续上一篇,这是从架构师的角度出发进行git的使用操作。从中包含了一些项目管理方面的规划,也看出架构师的工作还是蛮多的。
版本管理
简化版本
此为最常用的版本方式[1]。版本号采用在分支上打tag标识,格式为x.y.ab[.c],示例 0.1.01[.0]。
x 大版本
y 中版本
ab 小版本,这里主要是为了支持二分法所以做成2位
p 补丁号
代码管理体……继续阅读 »
为规范git的使用方法,提高工作效率和代码指令,结合具体实践经验,构建本文档。期望能通过持续优化,不断将零碎的知识点积累起来,形成体系化的知识。集腋成裘,聚沙成塔。
开发人员
开发人员一般遵循如下流程,完成任务。
接受任务
开发人员通过第三方平台(如ET等项目管理工具,其实完全可以自研)接受到任务:
一般为需求Feature或者Bugfix,描述如下:
#……继续阅读 »
类是java知识体系中很重要的基本概念。那么您对类的初始化过程又有多少了解呢?今天,我设计了一段代码,与大家共同探索一个较复杂的类的加载过程。
这段代码涵盖了成员变量(public、protected、private、static)、方法(static)、构造函数、继承的初始化过程。
目录
代码
运行结果
代码
在代码中以注释形式按照java类的初始化过程……继续阅读 »
Spring boot下的应用访问Redis数据库,采用属性配置文件读取数据,哨兵方式访问数据库。
pom文件
在pom文件中引入依赖包:
<dependency>
<groupId>org.springframework.boot
<artifactId>spring-boot-starter-……继续阅读 »
有时,在网上能看到这样一道题目“java中为什么要有垃圾回收?”。每个人都有各自的理解,答案也千奇百怪,基本的思路都是垃圾回收防止内存泄漏。最近,看了一点技术资料,进行稍微深入一点的学习,把自己的理解也与大家分享。
java在计算机中的存储
java在运行时,数据在计算机中是如何存储的?这比C语言的“寄存器+内存块”可复杂多了。不同语言的设计理念差异会导致……继续阅读 »
一个软件在系统中的安装有很多种方式,但分析其原理,无非就是文件的拷贝和注册。这也是Linux中 Everything is file 理念的一种体现。若再进一步说,则大致可以分为如下几个步骤。
在实际业务环境下,软件的安装往往受到公司的一些现实因素的约束,如技术策略、选型倾向、安全限制、人员能力、团队风格等。举个栗子来说,一个公司所使用的操作系统是确定的,……继续阅读 »
官方文档有的东西我尽量少说,我想聊聊个人实际项目的感悟。
就个人而言,我非常喜欢微信小程序,喜欢它与众不同的定位、清晰的边界、强势的管理以及持续的创新引领。当然,我也同样不喜欢它的开发文档,总是感觉怪怪的。描述的技术内容,看似懂了,一上手就发现总是差这缺那。当然,这也可能与我一直从事后台技术有关,若有人能够很好的适应还是不错的,但这并不妨碍我对微信小程序的热……继续阅读 »
习惯的养成真不是一件易事,不知不觉就把计划中的事情给忘了。但不管怎样,想起了就要补上。无论何时,亡羊补牢都是值得的,也许没有价值,但至少能安心。这次讨论的是nginx的日志解析。nginx是大家常用的工具,说实话,真的是非常好用和喜爱。那么它产生的日志就需要进行分析,本文就是一段用于nginx日志解析的小代码。当然,在实际系统中,若由我进行规划,则会采用比较……继续阅读 »
Mysql是大家常用的数据库。在做机场巴士智慧系统的时候,项目组也使用了一下,确实是很好用,挺符合简单方便的思路。在实际使用的过程中,发现除了默认的设置外,mysql还需要额外修改一些配置,以更适合生产系统的实际情况。这里面需要感谢我们的DBA(于光雪同学),很多都是她做的。我这里只是把我们为什么增加这类配置的背景思路以及操作说明一下。
后续还应该有几个类……继续阅读 »
这道题是一道求树形数组的最长路径。其实本篇是一个欠账。1年前,我遇到了这道题。当时看到题的第一瞬间,就知道应该采用递归的思想,可手实在是太生了。平时的工作更多是设立目标、路径规划、框架设计、模块划分、紧急处置、review代码。即使是直接动手修改,也更多是局部性修改完善,基本就没有机会从0开始写代码。所以导致的结果是,我知道我思路正确、最终能做出来,可总被小……继续阅读 »
以前看电影,美食大对决中就有经典的一幕,一道“干炒牛河”技惊四座,赢得了全场的掌声。当时的解说是,若想把最简单的做好,那就是最难的。现在回想起来,在我们的工作中,也有类似的情景。最简单的,往往并不是最难的,但确是最应该积淀和固化的,原因其实也很简单,最基础的技术,往往也是用得最多的,沉没成本也是最大的。
在我们的日常工作中,java作为主要开发语言之一,往……继续阅读 »