记录一次实际过程中的MySql数据库SQL优化

  |   0 评论   |   54 浏览

前言

之前开发项目的过程当中数据库存储的数据量都不是很大,在表的设计当中就只有一个主键索引。很少接触到数据库的索引,SQL 优化这些东西。公司目前的项目数据达到了百万级别了,让我优化一下慢 SQL,之前是懂一些 SQL 优化和索引相关的理论知识,没有实际操作过,特此记录优化的过程和思路,事实证明,理论和实操还是有不少区别的。

DUBBO2.7.x版本使用Nacos作为注册中心

  |   0 评论   |   17 浏览

前言

之前已经学习了 Spring boot + DUBBO2.7.4 +zookeeper 的整合: springboot 整合 dubbo2.7.x 版本
在注册中心的选择上,发现最近 nacos 的热度比较高,又要超越 zookeeper 的趋势,没有无缘无故的热度,肯定是有一些原因才会火起来的。所以打算学习下,了解下 nacos 的优劣,提升技术知识储备。

吃一垫长一智,一次糟糕的工作经历

  |   0 评论   |   112 浏览

--2019-11-13 date: '2019-11-13 16:08:24' updated: '2019-11-15 18:10:35' tags: [生活, 工作] permalink: /articles/2019/11/13/1573632504051.html 关于工作 拖欠工资 到这周 15 号工资拖欠就两个月了,并且到目前为止没有一点要发工资的苗头,一个运气不好可能拖到过年。 从 4 月份入职这家公司以来就经常拖欠工资,当初想着是上市公司,体量还是比较大的,也很少加班。觉着还是可以呆一段时间,说不定度过这个难关就好了。不过目前来看,公司其他事业部工资正常发放,就我们事业部拖欠工资。也就是说事业部的领导能力不行,俗话说的好,兵熊熊一个,将熊熊一窝。 骑驴找马 这段时间陆陆续续面试过不少公司,也有过 offer,要么是薪资不合适(996 的工作时间,965 的薪资),要么是工作地点太远(坐地铁 1 小时),要么是公司氛围不太满意(面试一个多小时,外面办公区只有键盘声),要么是外包(多数是银行外包)。 总的来说到目前为止没有一个满意的 offer 吧。 心态变化 从后悔到沮丧到奔溃到认清现实。 ....

回首2019,期待2020

  |   0 评论   |   118 浏览

今年的元旦对我而言有点不太友好! 仔细想想似乎是第一次一个人过元旦!以往基本都是回家和爷爷过的。不得不说星期三的元旦也是第一次遇见。 回首2019 2019,看到996icu,也看到了发帖404,离职251。 2019,网易暴力裁员,阿里马云退休,锤子倒闭! 2019,香港暴乱,都怪袁隆平让他们吃太饱。 2019,P2P平台暴雷!贷款有风险,借款也有风险! 2019,建国70周年,愿盛世长存! 2019,5G通讯建设,携号转网,区块链技术的认可。 2019,中国足球败给叙利亚!不是球迷但是为足球惋惜。 2019,.................... 以上都是作为一名吃瓜群众。 2019,李哥终究不再是你李哥,FPX夺得LOLS9冠军,厂长退役转教练。青春结束了啊! 2019,全面启用新的社保卡,才发现自己原来还可以刷医保! 2019,上海实行垃圾分类,还好不是成都,不然要命啊! 2019,上海堡垒关上了中国科技电影的大门!!!,算了,我还是老老实实的看国外的大片吧! 工作 2019年,工作极其不顺利! 3月份主动离职换到新公司,结果新公司经常拖欠工资,项目和技术都让我崩溃!终于在2....

Http,Https,Restful,Webservice,WebSocket,Rpc,Rmi,SOA,分布式,微服务,集群等概念

  |   0 评论   |   46 浏览

前言 在JAVA开发学习过程当中,总是会接触到很多概念性的名词。特此简单的总结记录一下相关名词对应的概念。 HTTP协议和HTTPS协议,RESTFUL接口 HTTP协议:是Hyper Text Transfer Protocol(超文本传输协议)的缩写,这是非常常见的一种协议,简单来说就是一个无状态的基于TCP/IP协议实现的应用层协议。 HTTPS协议: 由于HTTP协议的安全性问题而出现的协议,可以理解成HTTP + 加密 + 认证 + 完整性保护 = HTTPS 通常表现为:HTTP+SSL/TLS=HTTPS。 PS:(现在打开一个网站,如果不是以https开头,而是以http开头的话,浏览器基本都会提示你网站不安全什么的!!!) RESTFUL:简单来说就是对HTTP请求的方式和路径的一种约束规则,一种思想。 只要是符合这种思想的HTTP接口都可以叫做RESTFUL接口 即同一个路径,相同的参数,请求方式的不同,得到的结果也就不一样。 相关资料: 关于HTTP协议,一篇就够了 HTTP和HTTPS协议,看一篇就够了 RESTful介绍和使用教程 WebSocket WebS....

设计模式学习笔记之外观模式

  |   0 评论   |   39 浏览

什么是外观模式? 定义:为子系统中的一组接口提供一个一致的界面,用来访问子系统中的一群接口。 外观模式主要组成 外观角色(Facade):负责子系统的的封装调用 子系统类(Subsystem Classes):具体的子系统,实现由外观模式Facade对象来调用的具体任务 外观模式代码实现 代码略。。。。。。 在实际开发当中,外观模式基本可以说一直在使用。在MVC架构的项目当中,在controller层通过service层来操作dao层就是外观模式的具体表现。 service 就相当于Facade对象 ,dao就相当于子系统。 外观模式注意事项和细节 外观模式对外屏蔽了子系统的细节,因此外观模式降低了客户端对子系统使用的复杂性。 外观模式对客户端与子系统的耦合关系 - 解耦,让子系统内部的模块更易维护和扩展 通过合理的使用外观模式,可以帮我们更好的划分访问的层次 当系统需要进行分层设计时,可以考虑使用Facade模式 在维护一个遗留的大型系统时,可能这个系统已经变得非常难以维护和扩展,此时可以考> 虑为新系统开发一个 Facade 类,来提供遗留系统的比较清晰简单的接口,让....

设计模式学习笔记之组合模式

  |   0 评论   |   26 浏览

什么是组合模式? 组合模式的定义 Compose objects into tree structures to represent part-whole hierarchies.Composite lets clients treat individual objects and compositions of objects uniformly. 将对象组合成树形结构以表示 “部分-整体” 的层次结构,使得用户对单个对象和组合对象的使用具有一致性。 主要优缺点 优点: 当需要在组合内添加新对象的时候,不需要修改源码,复合开闭原则。 对外提供的是同一个对象,使用起来不必关心使用的是单个对象还是组合对象。 缺点: 设计起来比较复杂,需要理清类之间的层次关系。 使用场景 系统对象之间存在整体--部分的关系,并有一定的相同行为。(JAVA中的swing,公司组织架构等等) 组合模式的结构和实现 组合模式结构 抽象根角色(Component):定义系统层级之间的相同行为,是树枝和叶子构建角色的公共抽象接口。 树枝角色(Composite):定义树枝角色的行为,可以存储子节点,子节点可以是....

springboot整合MongoDB

  |   0 评论   |   49 浏览

什么是MongoDB? MongoDB是为现代应用程序开发人员和云时代构建的基于文档的通用分布式数据库 MongoDB Windows下的安装 网上安装教程一大堆,不过官方网站的教程最详细:官网windows下安装MongoDB 安装完毕之后如果不出错的话,就可以在计算机的服务里面找到一个:MongoDB Server 的服务。 MongoDB 数据库 成功安装之后,可以通过安装目录bin下的mongo.exe 连接上MongoDB 数据库。输入help 可以查看相关帮助信息。 常用操作: show dbs 查看全部数据库 use dbname 切换到指定名称数据库,如果没有就创建 show collections 获取指定数据库下的所有集合 db.createCollection("user") 在当前数据库下创建一个名为 user的集合 db.user.insert({"name":"hjljy","age":18}) 向user集合里面插入一条数据 db.user.find() 查看user集合全部数据 其他操作见help或者官方网站说明:https://docs.mong....

Nginx学习日志(四)自定义404,500,502,503等错误页面

  |   0 评论   |   26 浏览

Nginx 错误页面自定义 通常在项目当中会自定义项目的错误界面,当请求不对或者请求错误什么的就会返回一个对用户比较友好的提示界面。 今天打算升级自己的博客客户端,发现在关闭博客程序后再次访问会跳转到Nginx的502错误界面,就想着能不能自定义一下错误界面。 第一步:准备错误界面 文件名为:50x.html <!DOCTYPE html> <html> <head> <title>Error</title> <style> body { width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sans-serif; } </style> </head> <body> <h1>系统出错或升级当中</h1> <p>请稍后尝试或联系hjljy@outlook.com</p> </body> </html> 第二步:修改配置文件 修改ng....

设计模式学习笔记之过滤器模式

  |   0 评论   |   29 浏览

过滤器模式学习总结 过滤器模式(Filter Pattern),又叫标准模式(Criteria Pattern),是一种结构型模式。 这种模式允许开发人员使用不同的标准来过滤一组对象,通过逻辑运算以解耦的方式把它们连接起来,它可结合多个标准来获得单一标准。 优点:简单,解耦,使用方便。 使用场景:需要进行筛选时。 在开发当中接触过很多的过滤器,或者使用过stream的filter方法就非常容易理解这个模式。

springboot整合dubbo2.7.x版本

  |   0 评论   |   94 浏览

什么是Dubbo? Apache Dubbo |ˈdʌbəʊ| 是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 是的,是 Apache Dubbo,不在是Alibaba Dubbo。原因简单来说就是Alibaba 将dubbo 移交给Apache开源社区进行维护。 详情见这两篇文章: Dubbo正式进入Apache开源孵化器 从遇见到信任 | Apache Dubbo 的毕业之旅 Dubbo2.7.x版本变化 JDK版本需求上升到1.8 包名更换:com.alibaba.dubbo - > org.apache.dubbo 注册中心一分为三,变成注册中心,元数据中心,配置中心 异步支持优化 服务治理规则优化 ...... Dubbo生态系统 此图来源于Dubbo官网 SpringBoot 整合Dubbo2.7.x 环境信息: JDK 1.8 SpringBoot 2.2.1 Dubbo 2.7.4.1 准备工具:zookeeper 官网下载地址,新版dubbo_admin 官网下....

AXURE RP EXTENSION For Chrome下载安装,程序包无效:“CRX_HEADER_INVALID”

  |   0 评论   |   23 浏览

Chrome 无法打开原型图 提示需要下载AXURE RP EXTENSION For Chrome 这个插件 百度网盘链接: https://pan.baidu.com/s/1Dvq0q1leKUpXwVQyyrAbtA 提取码: 666z 注意事项: 安装时提示 程序包无效:“CRX_HEADER_INVALID” 无法安装插件 这时可以将对应的crx文件后缀变成rar或者zip 解压出来,然后通过加载已经解压的扩展程序完成安装。

十月再见,十一你好

  |   0 评论   |   45 浏览

人生的旅途中,会有一段路需要自己走,一些事需要自己扛。 十月再见 这个月发生了不少的事情,九月份的计划一个都没有实现。 十月一日 举国同庆,可惜人在路上,看不到直播。也给自己定下了一个目标,30年后,祖国百年华诞,如果自己身体健康,经济允许,一定要去天安门现场看看。 十月五日 闺女满月啦,吃饭的时候,表妹和她男朋友打算腊月份结婚,很可能明年我就是表舅了!! 十月十四日 这一天,算是这个月噩梦的开端吧,组长告知,公司回款不顺利,工资又要拖欠了,到现在也没有发,估计只有等十一月份了。 十月十五日 测试人员测出数据校验系统效率低下,然后组长让我去修改完善。这一改,改到我心态爆炸。 十月十七日 表妹打电话给我借钱急用,原因是舅舅在乡下被天雷蜂给蛰了。周末回去看望了下舅舅,人比较清醒,就是输液要输很久,早上8点到晚上9点差不多。医生说要把毒素给排出来。 十月二十日 不是一家人不进一家门,爷爷和我老婆同一天的生日。中午过完,下午有匆匆的坐火车回成都。 十月二十二日 看着这难以入目的代码,有见过直接New 抽象类的么? 有见过在try Catch里面return fals....

记录——JAVA动态加载外部JAR,并调用方法以及卸载关闭打开的外部JAR

  |   0 评论   |   100 浏览

正文 最近在工作当中需要通过JAVA代码去调用外部JAR里面的方法,而不是直接在项目当中直接引入对应的JAR。记录一下实现过程当中遇到的问题和具体实现的代码。 具体代码实现 第一步:创建一个测试类,然后把这个类打包成一个普通的jar包。打包方法: 记录——IDEA如何打普通JAR包 public class MyTest { public void show(String name){ System.out.println("参数是:"+name); } } 第二步:在其他项目当中调用刚才打包的jar里面的show方法 public class AddJar { public static void main(String[] args){ //外部jar所在位置 String path = "file:D:\Program File\IDEA\WorkSpase\Test20191015\out\artifacts\test191015\test191015.jar"; URLClassLoader urlClassLoader =null; Class<?&....

记录——IDEA如何打普通JAR包

  |   0 评论   |   93 浏览

正文 习惯了用maven命令打包,有点忘记了如何打一个普通的jar包了,特此记录一下。 jar包分两种:一种是有main函数的可以直接执行的jar包,一种是没有main函数,不可以直接执行的jar包(通常是工具包) 普通JAR包(不可以直接执行的jar) 1 点击project structure 找到Artifacts 点击加号,选择jar --Empty 2 修改jar名字,并把右边的compile output拉到左边的jar里面 然后确定保存 3 点击build 选择build artifacts 进行build就可以了。 4 对应的jar就打包完成了。 可直接执行JAR包(有main函数) 重复上面1 2步操作 3 然后点击create Mainfest 选择项目目录,直接确定即可 4 点击jar名称,然后设置对应的main函数位置。设置完毕点击确定即可 5 点击build,选择对应的artifacts 进行build就可以了。 6 测试是否成功,不报错,正确执行main里面的代码就成功了。

九月再见,国庆你好

  |   0 评论   |   24 浏览

九月再见 九月五日晚十点过五分,终为人父。 不为人父,不知养儿带女的辛苦。 十月你好 街道上挂满了红旗,建国七十周年终于来了。虽然祖国还有很多不好的地方,但是至少幼有所养,老有所依。只要自己不懒惰,总究还是能吃饱穿暖,比世界上绝大 多数国家要好得多了。 不养娃不知道压力,真的是要努力挣奶粉钱了啊。 九月份没怎么学习,接下来要加油了,争取在年底之前把设计模式学完。 认认真真的读一本好书。

设计模式学习笔记之桥接模式

  |   0 评论   |   40 浏览

前言 这是一篇学习笔记,内容很多是来源于网上的资料,然后按照自己学习情况进行的总结,有些是自身的感受,有些是网上比较好的资料的引用。 如果有人看到我写的笔记有不对的地方欢迎留言指出来,是真的欢迎指出来,因为我可能会错很久,然后才发现。学习技术不能闭门造车,要多交流,多讨论,多思考才能成长的快,学的快。 我的个人博客:海加尔金鹰 什么是桥接模式? 桥接模式的定义与用意 桥接(Bridge)模式的定义如下:将抽象与实现分离,使它们可以独立变化。它是用组合关系代替继承关系来实现,从而降低了抽象和实现这两个可变维度的耦合度。 桥接模式的用意 : 抽象化        将不同事物当中抽取出共同的特性的过程就是抽象化的过程。例如西瓜、香蕉、梨、 葡萄等,它们共同的特性就是水果。得出水果概念的过程,就是一个抽象化的过程。通常情况下,一组对象如果具有相同的特征,那么它们就可以通过一个共同的类来描述。如果一些类具有相同的特征,往往可以通过一个共同的抽象类来描述。   实现化        抽象化给出的具体实现,就是实现化。....

设计模式学习笔记之享元模式

  |   0 评论   |   39 浏览

前言 这是一篇学习笔记,内容很多是来源于网上的资料,然后按照自己学习情况进行的总结,有些是自身的感受,有些是网上比较好的资料的引用。 如果有人看到我写的笔记有不对的地方欢迎留言指出来,是真的欢迎指出来,因为我可能会错很久,然后才发现。学习技术不能闭门造车,要多交流,多讨论,多思考才能成长的快,学的快。 我的个人博客:海加尔金鹰 什么是享元模式 享元模式的定义与意义 Use sharing to support large numbers of fine-grained objects efficiently. 使用共享对象可有效地支持大量的细粒度的对象。 在面向对象的过程当中,对象的创建是很常见的事情,当对象的的数量过多时,就会带来运行性能下降的问题(消耗了太多的内存)。 享元模式主要用来避免系统创建多个重复对象,达到减少内存消耗的目的。 享元对象能做到共享的关键是区分内部状态和外部状态,内部状态指的是对象创建不会在发生变化的属性,外部状态是指会发生改变的属性。 比较金典的例子说明:围棋游戏当中,存在大量的黑子和白子,每个黑子除了落点位置不同之外,其他的大小颜色都相同。通过享元模式....