自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

皮肤

小白

  • 博客(55)
  • 资源 (20)
  • 收藏
  • 关注

原创 高级软件开发知识点

哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。有时候为了提高效率,只是为了测试下某个表中是否存在记录,就用 1 来代替。

2024-03-04 23:56:51 878

原创 zipkin

前言:ZIPKIN作为当前“跟踪”问题的流行解决方案之一,正在被越来越多的公司和个人学习使用。其中很重要的一块,就是上报链路数据。那么知道服务端如何接收数据,以及我们该怎样上报数据到服务端就显得十分重要。虽然ZIPKIN官方也开源了一个客户端Brave,但是本文却并不想直接介绍Brave,而是想站在一个从零开发ZIPKIN客户端的角度,一层层分析解决如何自己写一个ZIPKIN客户端,直到最后引出Brave。本文最终想达到的效果,就是希望通过本文,能让大家对ZIPKIN的链路上报有一个详尽的理解和认识。

2024-01-15 14:15:08 914

原创 算法--排列组合

目前只有全排列

2023-07-17 17:36:45 389

原创 性能优化笔记

用户体验 = 产品设计(非技术)+ 系统性能(快)

2023-03-14 11:03:37 392

原创 分布式ID

分库分表后需要有一个唯一ID来标识一条数据,数据库的自增ID显然不能满足需求;特别一点的如订单、优惠券也都需要有唯一ID做标识。此时一个能够生成全局唯一ID的系统是非常必要的。那么这个全局唯一ID就叫分布式ID。

2023-03-13 09:44:28 186

原创 分库分表原理

分库分表,首先要知道瓶颈在哪里,然后才能合理地拆分(分库还是分表?水平还是垂直?分几个)。选key很重要,既要考虑到拆分均匀,也要考虑到非partition key地查询。只要能满足需求,拆分规则越简单越好。

2023-03-10 17:21:19 353

原创 流行架构对比

作为一套专门用于事件流处理的分布式计算框架,Storm的诞生可以追溯到当初由BackType公司开发的项目——这家市场营销情报企业于2011年被Twitter所收购。Twitter旋即将该项目转为开源并推向GitHub平台,不过Storm最终还是加入了Apache孵化器计划并于2014年9月正式成为Apache旗下的顶级项目之一。Storm有时候也被人们称为实时处理领域的Hadoop。

2023-03-10 17:06:52 909

原创 Redis部署

命令含义: --zone #作用域 --add-port=80/tcp #添加端口,格式为:端口/通讯协议 --permanent #永久生效,没有此参数重启后失效。如果提示/deps/hiredis/libhiredis.a:cd ./deps make lua hiredis linenoise。如果提示cc没有找到:yum -y install gcc gcc-c++ libstdc+±devel。

2023-03-10 16:38:46 393

原创 springboot的yml配置文件通过db2的方式整合mysql

springboot整合mysql很简单,多数据源就master,slave就行了,但是在整合db2就需要另起一行,以下是同一个yml文件。ok这样就能通过config获取到了,下面是config源码。先配置mysql,代码如下。

2023-03-10 16:27:14 1273

原创 Jenkins集成sonarQube

sonarqube是一款自动化代码审查工具,用于检测代码中的错误、漏洞和代码异味。它可以与你现有的工作流集成,以支持跨项目分支和拉取请求的连续代码检查。其工作流程如下:如图如图sonarqube由以下4个组件组成:webserver:供开发人员,管理人员浏览高质量的快照并配置sonarqube实例searchserver:基于elasticsearch的searchserver从ui进行后退搜索(历史)computeengine:负责处理代码分析报告并将其保存在sonarqube数据库中。

2023-03-10 16:19:41 1016

原创 DevOps工具集合

DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

2023-03-09 17:39:08 1465 1

原创 IntelliJ IDEA 快捷键大全

IntelliJ IDEA 快捷键大全 Win 版

2023-03-08 17:56:25 1125

原创 mysql笔记

like ‘%m%’ ESCAPE ‘m’:告诉DBMS将第二个百分号作为实际值,而不是通配符。like ‘AB&_%’ ESCAPE ‘&’ : 查询条件为以AB_开头的字符串。尽量使用内连接替换IN等相关子查询。聚集函数比all效率高。

2023-02-16 11:06:04 527

原创 Swagger 使用指南

Swagger 使用指南

2023-02-01 09:45:37 1976

原创 linux常用命令集

linux常用命令集合。命令通过类别分类,方便阅读。

2022-12-07 16:05:34 667

原创 数据仓库笔记

数据仓库(DataWarehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化的(Time Variant)数据集合,用于支持管理决策(Decision-Making Support)。数据库与数据仓库的区别实际讲的是 OLTP 与 OLAP

2022-10-31 11:25:12 3600 1

原创 Nginx笔记大全

简而言之就是正向代理代理的对象是客户端,反向代理代理的是服务端。应用集群:将同一应用部署到多台机器上,组成处理集群,接收负载均衡设备分发的请求,进行处理并返回响应的数据。负载均衡器:将用户访问的请求根据对应的负载均衡算法,分发到集群中的一台服务器进行处理。1、解决服务器的高并发压力,提高应用程序的处理性能。2、提供故障转移,实现高可用。3、通过添加或减少服务器数量,增强网站的可扩展性。4、在负载均衡器上进行过滤,可以提高系统的安全性。

2022-09-01 17:51:49 925

原创 RabbitMQ安装

RabbitMQ就是当前最主流的消息中间件之一。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。...

2022-07-27 16:32:00 770

转载 Java 重构设计模式,厉害

重要提示什么时候该用lambda,什么时候不用,这是要看情况的,如果处理逻辑相对比较简单,可以用lamdba来重构,以便让代码更简洁易读,如果处理逻辑很复杂,应该还是用“类”。思路基于某个Subject主题,然后一堆观察者Observer注册到主题上,有事件发生时,subject根据注册列表,去通知所有的observer。比如会员系统中,每个商家都会有一些营销活动,需要推送某种信息给会员,但是不同的商家推送的内容可能不同,有些需要推送优惠券,有些需要积分通知。显然如果模板的实现方式越多,子类就越多。...

2022-07-26 17:40:33 261

原创 java8 LocalDate

代码】java8LocalDate。

2022-07-26 16:20:39 130

原创 Java线程池

我们是否可以将线程池的参数从代码中迁移到分布式配置中心上,实现线程池参数可动态配置和即时生效,线程池参数动态化前后的参数修改流程对比如下:动态化线程池的核心设计包括以下三个方面:动态化线程池提供如下功能:动态调参:支持线程池参数动态调整、界面化操作;包括修改线程池核心大小、最大核心大小、队列长度等;参数修改后及时生效。 任务监控:支持应用粒度、线程池粒度、任务粒度的 Transaction 监控;可以看到线程池的任务执行情况、最大任务执行时间、平均任务执行时间、95/99 线等。 负载告警:线程池队列任

2022-07-08 09:19:21 107

原创 如何优雅地记录操作日志

操作日志几乎存在于每个系统中。操作日志和系统日志不一样,操作日志必须要做到简单易懂。操作日志:主要是对某个对象进行新增操作或者修改操作后记录下这个新增或者修改,操作日志要求可读性比较强,因为它主要是给用户看的,比如订单的物流信息,用户需要知道在什么时间发生了什么事情。再比如,客服对工单的处理记录信息。操作日志的记录格式大概分为下面几种: * 单纯的文字记录,比如:2021-09-1610:00 订单创建。 * 简单的动态的文本记录,比如:2021-09-16 10:00 订单创建,订单号:NO.11089

2022-07-01 09:25:20 1362

原创 IT系统缩写

缩写全拼说明SCMSupply chain management供应链管理CADComputer Aided Design计算机辅助设计FMSFlexible Manufacture System柔性制造系统JITJust In time准时制生产MRPMaterial Requirement Planning物料需求计划MRP IIManufacturing Resource Planning制造资源计划ERPEnterp...

2022-01-05 17:13:36 509

原创 Lambda

之前List会创建iterator(迭代器),通过对象依次访问list种元素。这个设计理念是在单核机器上产生的。之前集合操作,或多或少会出现中间存储,增加垃圾回收的成本。代码冗长,以后维护非常耗时间,并且极易出错。从集合到流流与集合不同,因为它提供了一个可选的有序值序列而无须为这些值提供任何存储;它们是“移动种的数据”,这是一种表示批量数据操作的方式。流的目的是处理值。图中的矩形表示称为map的操作,通过系统规则转换每一个流元素。intList.stream().map(i -> new

2021-12-15 11:27:51 429

原创 算法心笔记

排序算法时间复杂度n²的排序算法冒泡排序(升级版-鸡尾酒排序[钟摆式])选择排序插入排序希尔排序时间复杂度n㏒n的排序算法快速排序:分治法(数列在每一轮都拆分两部分,直到不可再分为止)。选一个基准元素,大的放一边,小的放另一边。归并排序堆排序时间复杂度n的排序算法计数排序桶排序基数排序...

2021-10-27 17:46:55 259

原创 jvm脑图

2021-10-21 16:25:29 74

原创 中国上古神仙

创始元灵有4个徒弟,鸿钧老祖、混鲲祖师、女娲娘娘和陆压道君。宇宙诞生之初,有一先天混元之元灵,灵窍初开,渐具神智。这元灵无意中于西昆仑得到宇宙之初的造化神器,经过不知几世修行,元灵功德圆满,道法得成。在漫长难耐的混沌宇宙中,创始元灵成为宇宙间唯一的一个“清醒者”,忍受着难以想象的孤独寂寞。仿佛,为了完成某种约定而神秘的使命,创始元灵利用造化神器的无上灵力,分别传授给四个徒弟一门修行的法门。老大鸿钧,修“玄清气”,老二混鲲,修“玄灵气”,老三女娲,修“玄空气”,老四陆压,修“玄明气”,合之则为 “清灵空明”

2021-10-20 13:53:08 298

原创 系统并发设计思路

概念TPS(Transaction Per Second)每秒处理的事务数。从客户端发起请求开始计时,等到收到服务器端响应结果后结束计时,在计算这个时间段内总共完成的事务个数QPS(Queries Per Second)每秒查询数,表示服务器端每秒能够响应的查询次数。这里的查询是指用户发出请求到服务器做出响应成功的次数,可以简单认为每秒钟的Request数量。RT(Response Time),表示客户端发起请求到服务端返回的时间间隔,一般表示平均响应时间。并发数是指系统同时能处理的请求数量。如果

2021-10-19 14:00:29 247

原创 java面试大全

MybatisMapper接口方法不能重载。因为使用“全限名+方法名”寻找策略。Mybaits默认分页是结果集内存分页,非物理分页。可以自定义插件,在插件的拦截方法内拦截待执行的sql,然后重写sql,根据dialect方言,添加对应的物理分页语句和物理分页参数。mapper传递多个参数:(String name,String area)–>#{0},#{1};(@param(“username”) String name)–>#{username}。Mybaits 9种动态sql标签

2021-09-01 15:03:42 106

原创 Lambda

// 交集List intersection = numberList.stream().filter(item -> letterList.contains(item)).collect(Collectors.toList()); // 差集 (list1 - list2) List<String> reduce1 = numberList.stream().filter(item -> !letterList.contains(item)).collect(to

2021-08-11 18:19:57 74

原创 ZooKeeper

官网概要应用场景分布式通知/协调:用于分布式系统的任务分发与任务执行结果反馈 集群管理:可以监控节点的存活状态 Master选举 分布式锁:独占/控制时序 分布式队列数据结构类似于文件系统,每一个节点称为ZNode(二叉树) 可以存放数据 节点类型:临时节点/持久化节点架构节点:2N+1个server组成,N+1个节点可用时,整个系统保持可用 server角色类型:server存放数据(in-memory);Leader不接受client的请求,负责进行投票的发起和决议

2021-05-26 10:25:40 184 1

原创 Innodb性能监控

mysql > show engine innodb status\G;*************************** 1. row *************************** Type: InnoDB Name:Status:=====================================2021-05-10 10:41:58 0x7febcc273700 INNODB MONITOR OUTPUT=========================...

2021-05-10 10:45:23 325

原创 数据库部署

mysql57rpm -qa|grep mariadbyum remove mariadb-libs-5.5.60-1.el7.x86_64rpm -qa|grep mariadbcd /tmp/wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpmyum -y localinstall mysql57-community-release-el7-11.noarch.rpmyum -y i...

2021-04-26 10:20:58 96

原创 nginx 配置

1. location的语法:location [ = | ~ | ~* | ^~ ] uri { … }| 指令 | | 匹配标识 | | 匹配的网站网址 | | 匹配URI之后要执行的配置段|精确匹配(=) > 字符串打头匹配(^~) > 正则匹配(或) > 否定式正则匹配(!或!) > 通用匹配(/)。两种正则当中,区分大小写的优先级高,也就是不带*的优先级高(范围从小到大)2. 匹配模式:a. 精确匹配: 1 2 3 .

2021-04-26 10:16:56 560

转载 Android实现后台连续静默拍照

简单的背景(一堆废话)前段时间在做一个Android项目,其中涉及到需要实现“后台”静默打开前置摄像头连续拍照进行人脸检测。尝试过网上各种方法,主要做法就是将预览透明+变小(0.1x0.1),但是这种做法并不能实现所谓的“后台”效果,你只能在一个透明界面啥也干不了,不能进行交互,或者出现闪退等问题。这个问题基本困扰了我一个多月,在此感谢https://blog.csdn.net/qq_31530015/article/details/52015170,让我一下有了新思路,一天就搞定了这个问题...

2020-05-28 17:41:48 1219

转载 mysql8配置

innodb_buffer_pool # 注:缓冲池位于主内存中,InnoDB用它来缓存被访问过的表和索引文件,使常用数据可以直接在内存中被处理,从而提升处理速度;innodb_buffer_pool_instance# 注:MySQL5.6.6之后可以调整为多个。表示InnoDB缓冲区可以被划分为多个区域,也可以理解为把innodb_buffer_pool划分为多个实例,可以提高并发...

2020-03-12 16:57:12 200

原创 centos-linux mysql卸载

卸载mysql组件【 查看MySQL组件 】[root@localhost ~]# rpm -qa | grep -i mysqlmysql-server-8.0.17-3.module_el8.0.0+181+899d6349.x86_64mysql-errmsg-8.0.17-3.module_el8.0.0+181+899d6349.x86_64mysql-common-8.0....

2020-03-12 14:51:35 259

原创 主流行架构

nexus,gitlab, svn, jenkins , sonar, docker,apollo,catteambition,axure,蓝湖,禅道, WCP;redis,kafka,es,zookeeper,dubbo,shardingjdbc,mysql,InfluxDB,Telegraf,Grafana,Nginx,xxl-job,以上技术都是目前我平台......

2019-12-24 17:44:32 162

原创 ES安装

# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.2.1-linux-x86_64.tar.gz#curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.2.tar.gz# ...

2019-12-13 15:30:45 82

转载 Redis的内存优化

声明:本文内容来自《Redis开发与运维》一书第八章,如转载请声明。Redis所有的数据都在内存中,而内存又是非常宝贵的资源。对于如何优化内存使用一直是Redis用户非常关注的问题。本文让我们深入到Redis细节中,学习内存优化的技巧。分为如下几个部分:一. redisObject对象二. 缩减键值对象三. 共享对象池四. 字符串优化五. 编码优化六. 控制key的数量一......

2019-12-13 15:26:54 292

Kubernetes权威指南第2版

Kubernetes是谷歌严格保密十几年的秘密武器——Borg的一个开源版本,是Docker分布式系统解决方案。 Kubernetes是由谷歌开源的Docker容器集群管理系统,为容器化的应用提供了资源调度、部署运行、服务发现、扩容、缩容等一整套功能。《Kubernetes权威指南——从Docker到Kubernetes实践全接触》从一个开发者的角度去理解、分析和解决问题,囊括了Kubernetes入门、核心原理、实战开发、运维、高级案例及源码分析等方面的内容,图文并茂、内容丰富、由浅入深、讲解全面;并围绕着生产环境中可能出现的问题,给出了大量的典型案例,比如安全问题、网络方案的选择、高可用性方案及Trouble Shooting技巧等,有很好的可借鉴性。 无论对于软件工程师、测试工程师、运维工程师、软件架构师、技术经理还是资深IT人士来说,《Kubernetes权威指南——从Docker到Kubernetes实践全接触》都极具参考价值。 -----------------------仅仅提供研究学习,如果喜欢请购买正版。

2018-01-23

Kubernetes权威指南第一版(part2)

kubernetes权威指南是一款专门为kubernetes初学者提供实战教程;kubernetes是一个基于Docker容器的开源编制系统,它能在跨多个主机上管理Docker应用,并提供应用程序部署 维护和扩展的基本机制。

2017-08-25

Kubernetes权威指南 第一版 part1

kubernetes权威指南是一款专门为kubernetes初学者提供实战教程;kubernetes是一个基于Docker容器的开源编制系统,它能在跨多个主机上管理Docker应用,并提供应用程序部署 维护和扩展的基本机制。

2017-08-25

Pencil Project

Pencil Project最初只是firefox的小插件,曾经得过Firefox插件Grand Prize大奖第一名,后来发布了独立软件。这款手绘风格的开源原型设计工具可以用来绘制各种架构图和流程图。Pencil Project内置丰富模板,可创建具有背景的多页面文档,支持文档内超链接跳转,支持富文本功能的文字处理,支持安装自制画笔和模版,具备所有标准绘图功能如对齐、堆叠层级、缩放、旋转等,支持添加外部对象,跨平台……可以创建可链接的文档并输出成为HTML、PNG、OpenOffice、Word、PDF等格式的文件。

2016-09-01

java 8 esampler

英文版 it should comes as no surprise that the release of jdk 8

2016-06-17

java8SDK API

sdk8的api文档

2016-06-17

springweb框架需要jar包大全

包含了java用spring开发的所需要的几乎所有的jar包 适用于初学者快速搭建环境和缺少jar包的同学们

2016-05-11

智能交互设备框架设计

2016-03-10

apache-mima-2.0.7-src.zip

Apache MINA是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可靠性的网络应用程序。它提供了一个通过Java NIO在不同的传输例如TCP/IP和UDP/IP上抽象的事件驱动的异步API。 Apache MINA 也称为: ● NIO 框架库 ● 客户端服务器框架库 ● 一个网络套接字库 MINA虽然简单但是仍然提供了全功能的网络应用程序框架: ● 为不同的传输类型提供了统一的API: ○ 通过Java NIO提供TCP/IP 和 UDP/IP支持 ○ 通过RXTX提供串口通讯(RS232) ○ In-VM管道通讯 ○ 你能实现你自己的API! ● 过滤器作为一个扩展特性; 类似Servlet过滤器 ● 低级和高级的API: ○ 低级: 使用字节缓存(ByteBuffers) ○ 高级: 使用用户定义的消息对象(objects)和编码(codecs) ● 高度定制化线程模型: ○ 单线程 ○ 一个线程池 ○ 一个以上的线程池(也就是SEDA) ● 使用Java 5 SSL引擎提供沙盒(Out-of-the-box) SSL · TLS · StartTLS支持 ● 超载保护和传输流量控制 ● 利用模拟对象进行单元测试 ● JMX管理能力 ● 通过StreamIoHandler提供基于流的I/O支持 ● 和知名的容器(例如PicoContainer、Spring)集成 ● 从Netty平滑的迁移到MINA, Netty是MINA的前辈。

2014-04-25

iText in Action 2nd Edition

java 生产PDF文件不错的插件 值得拥有

2013-02-27

ITEXT 用于生产PDF报表

ITEXT 用于生产PDF报表 版本是5开头的

2012-09-20

poi辅助包用于报表生产

POI报表导出辅助包,用于生产各种常用报表

2012-09-20

SDP format for RESP Streams

SDP format for RESP Streams 流媒体服务

2012-05-16

linux 安装序号

linux安装序号 为了方便linux安装用户

2012-05-15

ext-3.2.1完整版

ext 全部的资源,包括各种例子 button chart form grid desktop menu layout tree tabs等

2011-03-08

annogen-0.1.0.jar

org.codehaus.annogen.generate.Annogen.class org.codehaus.annogen.generate.AnnogenInfo.class org.codehaus.annogen.generate.AnnogenTask.class org.codehaus.annogen.generate.internal.joust.Annotation.class org.codehaus.annogen.generate.internal.joust.AnnotationImpl.class org.codehaus.annogen.generate.internal.joust.CodeGenUtil.class org.codehaus.annogen.generate.internal.joust.CompilingJavaOutputStream.class org.codehaus.annogen.generate.internal.joust.Expression.class org.codehaus.annogen.generate.internal.joust.ExpressionFactory.class org.codehaus.annogen.generate.internal.joust.FileWriterFactory.class org.codehaus.annogen.generate.internal.joust.JavaOutputStream.class org.codehaus.annogen.generate.internal.joust.SourceJavaOutputStream.class org.codehaus.annogen.generate.internal.joust.ValidatingJavaOutputStream.class org.codehaus.annogen.generate.internal.joust.Variable.class org.codehaus.annogen.generate.internal.joust.WriterFactory.class org.codehaus.annogen.override.AnnoBean.class org.codehaus.annogen.override.AnnoBeanMapping.class org.codehaus.annogen.override.AnnoBeanSet.class org.codehaus.annogen.override.AnnoContext.class org.codehaus.annogen.override.AnnoOverrider.class org.codehaus.annogen.override.ElementId.class

2010-12-03

activation-1.1.jar

邮件发送 需要加入activation.jar

2010-12-03

java web开发典型模块大全

Rss、备忘录、搜索引擎、聊天室、留言板

2010-05-27

Java Web 开发典型模块大全(上)

典型的公用模块 可以现成调用 如:图文验证码、投票统计、文件上传与下载、自助建站模块、留言本等

2010-05-27

空空如也

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

TA关注的人

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