自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(147)
  • 资源 (2)
  • 收藏
  • 关注

原创 Hello Mr.J——唠唠叨叨年终总结(2023复刻版)

文章都没人看,还写什么摘要呢

2023-02-24 00:17:39 897 2

原创 从零开始的学习生活01——Mybatis

最近给自己报了个java的训练营,开始一点点学习常见的各种技术知识,之前自己学的稀烂,有的时候面试别人时想到的问题,都不知道人家回答的对不对。抱着整理自己的知识的念头,也会行吧,不装了,我摊牌了,我就是不会呀赶紧过来学的。Mybatis持久层相关概念ORM一切还要从ORM开始说起,很久之前呢,大家都是通过JDBC来操作数据库的,但是大家写来写去发现关于数据库的操作代码,绝大多数做的都是同样的事情,有区别的也就是写的sql不太一样了。那么经历过一段时间的各个公司自己实现的持久成框架之后,提出了ORM

2021-03-17 21:04:48 380 1

原创 Hello Mr.J——这刷题也就2000分水平

从上次总结以来,断断续续的边看书边继续做题,书没看下去多少,题做的还行吧,最严重的问题是每天处理的事情比较多,回到家吃了饭躺在场上看直播就完全不会去想继续做做题的事情了,看起来是我跟进的东西比较多吧,分散的注意力太多了,以后想做的事情可以尽量分配给其他人做做看,不然很难腾出自己的时间来。之前说要看算法导论来着,确实看了,大概看了没几节就看不下去了,这本书怎么说呢,就感觉需要硬啃,或者有一些代码基础然后进阶学习理论的时候更合适,看来我还差了一些,看着满屏幕的公式和说明,看着看着就满脑子反手一个超级加倍闷声发

2020-09-21 18:57:09 189

原创 Hello Mr.J——利特寇德 sama no mercy

从3月开始下决心开始刷leetcode的题,陆陆续续的做了将近3个月,赶上了4、5月份的每日一题的挑战,再加上自己额外尝试写python和scala的解题方案,这些日子还是比较充实的。整体下来就是一个感受:人菜瘾大!开始计划是每2天一道,先从easy做起,做起来轻松加愉快,除了硬抠算法的执行速度之外,还有时间能看看其他人的解决方案,尝试写出多种语言的代码,再加上前期疫情原因工作不多,整体时间都偏向于自己学东西,每天都有进步还是挺有成就感的。后期开始追着每日挑战开始做,问题开始逐渐暴露,随着题目难度的上

2020-06-17 20:37:51 216 1

原创 Hello Mr.J——函授。呃。函数式编程

从12月开始吧,就一直在看函数式编程相关的东西,大部分时间走了一些弯路,因为这里面有很多概念不容易理解,那么这一个月的时间也是总结了一下,发现有一本师哥给的英文书写的也是在经过一些弯路学习过程后给出了简单易理解的解释。那么这篇文章就不谈什么实现细节,专门解释这些“难以理解”的概念。并不是什么新的语法函数式编程并不是什么新的东西,可以说当年阿隆佐·邱奇(Alonzo Church)老爷子提出了l...

2019-01-30 18:46:51 246 1

原创 Hello,Mr.J——唠唠叨叨年终总结

有想写什么的想法的时候,圣诞的阳光还在还能通过对面的大楼反射回来,等真正的有时间动手开始写,已经能听到外面路人在商量跨年的声音了,倒不是没有心思写,只是总习惯安静的找出大段的时间专注于一件事情。在商场的华丽装饰前面总想时间停在这里,听着圣诞的小火车带着铃铛声穿过隧道,路过旋转木马,路过林中木屋,路过了雪山和泳池,再安安稳稳地回到隧道,安安稳稳地走过一年的时间。试炼时间,前路坦荡17年经历了公司...

2019-01-01 01:20:32 22695 1

原创 Hello Mr.J——Docker 安装和启动

那么上篇博客简单了解了docker的情况,这一篇就来简单的跑点东西玩玩。   首先,linux的环境还是要准备一个的,docker for windows我装了之后不但没有启动成功,还把电脑的虚拟化功能给搞坏了,最后还是搞了个centos的虚拟机。   Docker目前分为了社区版和企业版,通常来说社区版给一些基本功能尝尝鲜,要是好用的话,再向他们买企业版。咱们这种简单的使用社区版已经够用

2017-06-30 23:35:49 676 3

原创 Hello Mr.J——开个新坑,Docker!

最近开始加班状态,没什么时间看mycat源码了,也有一种可能是后面看不懂了,假装弃坑了。    近期也没什么新的进展了,项目也没什么好玩的东西可以研究了,准备看看之前遗留的一个新坑——docker。    Docker这个东西都在传,而且还都传的很邪乎,都说什么这是云时代的标志什么什么的,然而当我们有认识过虚拟化技术之后,这些看起来都是差不多的。    在我的眼中,OpenStack这

2017-06-29 23:38:41 519 1

原创 Hello Mr.J——路由解析

上次分析了一个SQL语句,传到MyCat这里,对他做的一系列的判断从而处理一些不需要执行到数据库的操作。这次我们在分析完SQL语句之后,开始执行SQL语句,并且需要根据我们设置的分片规则,取出所有的数据,拼接成完整的结果。  首先,在执行SQL语句之前,进行了一系列的检查工作,数据库的检查,schema中的虚拟库(原来的注释将这个叫Schema)的检查,兼容一些第三方的工具,并且支持sql语句

2017-03-30 17:01:56 582 1

原创 Hello Mr.J——SQL分类

看了很长很长时间的建立连接的源码,NIO,SOCKET,连接这部分确实是我的短处,到现在都没看懂。  恩,换了一部分研究,就看了一下解析SQL的过程,这个过程在mycat的源码贡献者——http://www.hashzhang.com/frontend/html/index.html 这大兄弟这里是归类到了路由模块中。  既然人家是源码贡献者,站在巨人的肩膀上,顺着他的分类继续分析吧。

2017-03-08 16:46:15 387 2

原创 Hello Mr.J——Mycat加载用户配置,各种XML

上一篇中在初始化的时候,有读取用户配置的代码,这次我们进来看看。  因为很多的数据都是初始了一次尽量不会再次初始化,这里的大部分初始化配置都是基于构造函数的。  MycatServer的构造函数中有个MycatConfig,这个类是保存读取的结果,具体的读取过程是ConfigInitializer来完成的。 public MycatConfig() { //读取schema.

2017-02-09 17:10:30 1058 2

原创 Hello Mr.J——What do you want?Mycat~

Mycat在使用中充当的是一个数据库和应用程序中间层的角色,我的理解就是数据库中间件。Mycat在启动之后对程序端来说模拟了一个MySQL5.6的逻辑数据库,应用程序使用Mycat配置的用户名密码控制对逻辑数据库的访问。Mycat在接收到应用程序发来的SQL请求之后会进行拦截,并且解析SQL语句。之后会按照配置的分片规则进行对真正的数据库的访问,数据库将数据返回之后,Mycat会对返回的结果进行拼接,最后返回给应用程序。

2017-01-16 11:28:18 639 4

翻译 Reflection vs Encapsulation – Stand Off in the Java Module System(5)

看起来又要凑一个数了。然而我又翻了一篇,就这么写博客能写到我退休。    Class Path Trickery  类路径技巧  Now we’re entering less modular ground. As you might know java and javac require modules to be on the module path, which is

2017-01-10 17:29:31 340 1

翻译 Reflection vs Encapsulation – Stand Off in the Java Module System(4)

估计2016是完结不了了。  Open Packages 开放包 Now it gets interesting. A pretty recent addition to the module system is the ability for modules to open up packages at run time only. 现在事情变得有趣了。模块系统最近的

2016-12-29 17:35:03 327 4

翻译 Reflection vs Encapsulation – Stand Off in the Java Module System(3)

Choice of Weapons  武器的选择  So let’s say we are in a position where we need to make a module’s internals available via reflection. Maybe to expose it to a library or framework module or maybe be

2016-12-26 17:22:40 405 2

翻译 Reflection vs Encapsulation – Stand Off in the Java Module System(2)

神TM还有续集。。 The Stand Off 对质  Inside the module system (let’s drop the saloon, I think you got the joke) reflection could only ever access code in exported packages. Packages internal to a mod

2016-12-14 10:07:15 330 7

翻译 Reflection vs Encapsulation – Stand Off in the Java Module System(1)

Reflection vs Encapsulation – Stand Off in the Java Module System反射vs封装—Java模块化系统下的对质 Historically reflection could be used to break into any code that ran in the same JVM. With Java 9 this is

2016-12-08 17:15:43 431

原创 Hello Mr.J——shiro session管理机制

2016-08-31 22:04:38 2105

原创 Hello Mr.J——shiro 实现session共享

.

2016-08-31 22:03:12 1431

原创 Hello Mr.J——shiro+cas

在shiro的某个版本之后,添加了对cas的支持,cas我们很早之前介绍过,是一个单点登录的解决方案,而shiro正好是一个权限验证和授权的解决方案,这两个东西结合起来使用可以解决大部分的系统的权限需求。  我们在上个例子的基础上添加对cas的支持。  首先,还是在pom文件中添加需要的包。 org.apache.shiro

2016-08-30 21:35:57 489 5

原创 Hello Mr.J——shiro+springmvc

上次写完了shiro的博客也是做了很多的工作,项目中的shiro结合了很多东西使用,整个配置文件有些混乱,现在才算是理清楚了。  那么我们先看看shiro的基本功能如何和springmvc相结合的。  我们的项目是maven项目,所以先在pom文件中加入shiro需要的包。 org.apache.shiro

2016-08-30 21:18:31 688 3

原创 Linux is not Matrix——FastDFS 海量数据存起来

FastDFS是一个开源的轻量级分布式文件系统。它解决了大数据量存储和负载均衡等问题。特别适合以中小文件(建议范围:4KB   FastDFS服务端有三个角色:跟踪服务器(tracker server)、存储服务器(storage server)和客户端(client)。  Tracker server:跟踪服务器,主要做调度任务,负载均衡。在内存中记录集群中所有的存储服务器的状态,客户端

2016-07-31 21:46:49 629 1

原创 Hello Mr.J——shiro 简单地认识

当年由于项目紧张,没什么人能接手这部分内容,我就随便的接下了维护shiro和cas的任务,然后就一直在做这的维护,一直没有仔细的研究一下,做做总结。  这些日子,很多人也都来问我关于这方面的东西,我这里只能零零碎碎的说一些我知道的内容,没有做过过多的解释。  这几天没闲着,终于是理清楚了项目中shiro使用了哪些功能,可以简单了聊两句了。  Apache Shiro是一个强大易用的Ja

2016-07-31 20:39:48 484 2

原创 Linux is not Matrix——MyCat实现读写分离

MyCAT 可以视为“MySQL”集群的企业级数据库,用来替代昂贵的Oracle集群,其背后是阿里曾经开源的知名产品Cobar。MyCAT的目标是:低成本的将现有的单机数据库和应用平滑迁移到“云”端,解决数据存储和业务规模迅速增长情况下的数据瓶颈问题。  MyCat可以做的事情很多,它是一款遵守Mysql原生协议,跨语言,跨平台,跨数据库的通用中间件代理。它可以实现基于心跳的自动故障切换,支持

2016-07-26 19:49:17 382 2

原创 Linux is not Matrix——感受黑科技吧,网页安装mysql cluster

大概一年前,曾经为了做某个项目专门研究了一下windows的mysql cluster,后来学习了linux,做过一个bin-log日志同步的主从复制的集群。  然而今天又是这个问题,还是搭建集群,只是环境换成了linux环境。  大部分的配置步骤是一样的,配置管理节点,配置文件,然后配置各个SQL节点和数据节点的配置文件,启动。

2016-07-09 21:47:13 622 2

原创 Hello Mr.J——WebService传递Map类型

2016-06-30 19:21:20 4409 1

原创 Hello Mr.J——用CXF框架发布WebService

最近的任务可是不少,组织上面要求发布WebService进行旧系统和新系统之间的数据通信,旧系统使用了EJB实现远程调用,EJB本身是可以发布成WebService的,就单纯的在EJB的类上面多加一个@WebService注解就能发布成功了。  不过最近听说有个CXF框架挺好的,可以支持Map,然而我查的所有资料中都指出WebService不支持Map类型。。。还不如就随便搞一个http接口然

2016-06-30 09:48:42 586 4

原创 Hello Mr.J——tomcat优化

2016-06-29 17:35:36 438 4

原创 Linux is not Matrix——mysql优化脚本

最近因为莫名奇妙的原因,我们的访问页面cas经常的会反映缓慢,然而日志里面一片祥和,目前我也没有很好的方案,所以只能说根据经验来找一下原因。我估计得原因有两个,一方面是数据库,一方面是tomcat。这篇博客主要写一下对数据库的参数设定方案。在1个月之前,我也遇到了这种情况,当时我上网查到的资料有一种说法是在mysql的配置文件中加入一句--skip-name-resolve

2016-06-15 21:14:31 531 3

原创 Linux is not Matrix——日志搜集平台ELK(III)

终于到了最后的kibana了,其实这个是最简单的,就是个界面。  下载解压。wget https://download.elastic.co/kibana/kibana/kibana-4.5.1-linux-x64.tar.gztar ./kibana-4.5.1-linux-x64.tar.gzmv ./kibana-4.5.1 ./kibana  然后进入目录直接启动kibana就

2016-05-31 21:28:59 553 4

原创 Linux is not Matrix——禅道的备份

每天都会很多莫名其妙的事情,然后会发生很多莫名奇妙的错误,最后这些错误莫名奇妙的就归我了,以后还是少接这种不特别急得任务,给大伙多练练手吧。  这次是禅道的崩崩崩了,不知道为啥,我们的禅道放在了阿里云的服务器上面,然而这台阿里云的收费政策是流量,因为欠费了,就出现了访问不了的情况。  所以这次我就直接将禅道搭建到了局域网服务器上面,省的访问不到- -。  这里有些困难的地方就是原来的东

2016-05-29 20:48:21 1191 8

原创 Linux is not Matrix——日志搜集平台ELK(II)

今天就是ElasticSearch了。   ElasticSearch是一个全文索引搜索引擎,想象成百度就行了,只不过这个搜索范围是所有日志内容。   下载ElasticSearch,并解压wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/elasticse

2016-05-20 21:18:45 623 3

原创 Linux is not Matrix——日志搜集平台ELK(I)

又拖了一些日子,然而是为了准备一个大新闻,一般来说我准备的这些运维方面的软件都是有了这个需求,然后需要解决什么问题才会研究这方面的软件的,这次也是为了解决一个问题,日志。   我们已经在代码中加入了log4j,在jboss或者tomcat的log文件夹中就能看到日志输出的信息了,一旦出了问题我们就可以找到日志,然后打开里面的内容去解决具体问题。   然而,假设我们的系统是一个大型的分布式系

2016-05-15 21:22:58 599 2

原创 Linux is not Matrix——saltstack批量管理服务器

手底下的服务器多了以后,维护起来真的挺费劲的,老大说装个啥软件咱就要在十多台服务器上挨个装一遍,简直耽误时间,要是遇到什么停电维护,又要关闭一大堆服务器异常的麻烦。  所以咯,就找了一下方便批量部署批量操作的软件,发现推荐的比较多的有两个,一个是puppet,一个是saltstack。  puppet我研究了一下就放弃了,毕竟我不是专业运维的,python脚本要学习起来还是比较消耗时间的,

2016-04-30 15:25:38 698 3

原创 Linux is not Matrix——redis集群搭建

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。

2016-04-26 20:41:30 703 8

原创 Linux Is Not Matrix——zabbix监控JBoss

zabbix可以监控的范围很多,就目前的需求来看我们还需要zabbix监控我们的JBoss服务器,当然也就是监控JVM。  不论是用什么监控JBoss或者tomcat这种web服务器,都是通过JMX来获取JVM的数据的,所以第一步就是开启JBoss的JMX。  打开JDK的目录并且进入/jre/lib/management目录下面,修改jmxremote.access、jmxremote.

2016-04-13 20:59:23 2845 6

原创 Linux Is Not Matrix——zabbix监控mysql

再添加了一台主机之后,我们还需要添加其他的主机,这个很简单,直接把上一篇博客中编译好的zabbix文件夹从客户端直接复制到想要添加的主机中,然后在把配置文件也复制过来,这样就省得我们再次编译了。  然后在新的主机中添加zabbix用户和用户组,最后再去zabbix网页上添加一个新的主机,点击Full clone就添加完成了。  然后,如果我们新添加的这个服务器是作为mysql数据数

2016-04-13 20:24:16 459 4

原创 Linux Is Not Matrix——zabbix添加新主机

在安装zabbix之后,会有一个初始化的流程,大概六个页面,设置一下数据库,端口之类的,很简单,我这里就贴一下图,不仔细说明了。欢迎界面检查php需求填写mysql配置zabbix server信息概述完成   这里借用的ttlsa的图,运维生存时间,转图说明出处,做一个有素质的程序员。虽然他这个是2.2版本的。。。 

2016-03-30 20:22:07 3024 3

原创 Linux Is Not Matrix——zabbix安装

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。   zabbix能监视各种系统资源,网络参数,保证服务器系统的安全运营。还可以监控JVM,Mysql访问量,Redis,Nginx等等等等。并切可以灵活的通知,让系统管理员快速定位、解决存在的各种问题。   zabbix由2部分构成,zabbix server与可选组件zabbix agent

2016-03-27 19:39:50 573 2

原创 Linux Is Not Matrix——扩容的时间2

咱们书接上文。   上回写到了,硬盘空间已经增加了,但是在linux中查看,还是原来的容量。   咱们使用的是LVM的分区,LVM分区中有这么几个概念,物理卷PV (Physical Volumn);卷组VG(Volumn Group); 逻辑卷LV(Logical Volumn)。还有物理块,逻辑块的概念这里就提一下,不深入了。   Linux管理硬盘是直接管理的LV的,它不会直接操

2016-03-19 20:29:12 407

FastDFS_v5.08.tar.gz

FastDFS_v5.08.tar.gz

2016-07-31

zabbix 3.0 源码压缩包

zabbix-3.0.1.tar.gz。官网下载好蛋疼

2016-03-27

空空如也

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

TA关注的人

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