感冒石头的博客

知识探讨

linux jenkins部署

jenkins可以部署静态类项目html,war包类型项目,jar架包类型项目 其他环境配置需提前部署好java,maven等1.下载jenkins(/usr/local/jenkins 目录下) wget http://mirrors.jenkins.io/war-stable/latest/j...

2019-05-08 11:37:44

阅读数 22

评论数 0

linux搭建私服

1.下载nexus(/usr/local目录下) wgethttps://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.11.2-03-bundle.tar.gz2.解压文件并重命名 tar -zxvfnexus-2.11.2-...

2019-04-02 22:57:01

阅读数 39

评论数 0

java线程池场景使用

当服务器接口之间通讯中,如果A服务器请求B服务器,只返回请求通讯成功且不需要实时返回业务成功或失败时,处理成功或者失败用异步通知方式,那么可以采用线程池或者消息队列业务场景:金融业务中的强风控,还款等等重点:如果需要同步通知业务成功或失败,让A服务器提供通知接口,在服务器B线程中可以同步通知服务器...

2019-03-21 16:43:56

阅读数 48

评论数 0

Spring编程式事务管理

两种Spring事务管理方式:编程式、声明式。 Spring提供了两种声明式事务管理,分别是AOP切面和注解@Transactional Spring提供两种方式的编程式事务管理,分别是:使用TransactionTemplate和直接使用PlatformTransactionManager。 ...

2019-03-21 15:30:33

阅读数 44

评论数 0

java redis和lua整合,以及Ehcache分布式方案,待定

java redis和lua整合,以及Ehcache分布式方案,待定

2018-12-02 17:24:00

阅读数 97

评论数 0

java中toString用法

toString在实际开发中,如果在实体类中不重写toString方法,那么返回的是实体对象,如果重写toString方法,那么返回的是Sring实例如下:   public class User extends BaseEntity { /** 用户姓名 **/ private...

2018-12-02 16:13:54

阅读数 203

评论数 0

git常用命令

第一次安装git 的时候需要设置 git config --global user.email "you@example.com" git config --global user.name "Your Name" 本地提...

2018-11-15 17:10:33

阅读数 74

评论数 0

简单mysql查询笔记

第一个sql SELECT tbi.`user_id` , concat(tui.`reality_name`) '出借人姓名',  concat(tui.id_number,'AB') '身份证', concat(tui.`mobile`) '手机号码', concat(tbi.`time`) ...

2018-11-14 17:50:37

阅读数 90

评论数 0

MySQL开启慢查询日志

本方案只适应于小的项目、项目未上线或者紧急情况下可采用这种方式,一旦开启慢日志查询会增加数据库的压力,所以一般采用后台对数据操作时间写入日志文件中,每一周定时进行清除日志 mysql优化方案:开启慢查询日志(查询sql执行超过一秒以上sql等等)开启慢查询日志:可以让MySQL记录下查询超过指定...

2018-08-10 14:11:52

阅读数 263

评论数 0

java 无锁CAS原理

CAS的全称是Compare And Swap 即比较交换,其算法核心思想如下 执行函数:CAS(V,E,N) 其包含3个参数 1.内存值V 2.预期值E 3.新值N 如果V值等于E值,则将V的值设为N。若V值和E值不同,则说明已经有其他线程做了更新,则当前线程什么都不做。通俗的理解就是CAS操作...

2018-08-08 09:01:32

阅读数 139

评论数 0

java之读写锁ReadWriteLock

读写锁:核心思想实现读写分离,高并发下特别适合 读多写少的场景。  因为synchronized关键字和ReentrantLock 同一时间只能有一个线程进行访问被锁定的代码,读写锁的机制则不是,本质上分为两把锁,读锁和写锁,在读锁情况下,多个线程可以并发访问资源,只有当是写锁时只能一个一个的顺序...

2018-08-07 09:15:59

阅读数 64

评论数 0

redis缓存穿透、缓存雪崩、缓存击穿(热点Key)解决方案

redis缓存穿透:查询一个数据库中不存在的数据,比如商品详情,查询一个不存在的ID,每次都会访问DB,如果有人恶意破坏,很可能直接对DB造成过大地压力 解决方案:当通过某一个key去查询数据的时候,如果对应在数据库中的数据都不存在,我们将此key对应的value设置为一个默认的值,比如“NULL...

2018-08-05 17:18:25

阅读数 1174

评论数 0

分布式系统-幂等性解决方案

幂等操作:是其任意多次执行所产生的影响均与一次执行的影响相同(不用担心重复执行会对系统造成改变)业务场景:1.绑定银行卡发送短信接口。如果APP重复点击调用后台接口,后台重复调用第三方接口,造成用户收到多条短信,一般情况下控制在60s内再重发短信,如果不做控制,每一次调用第三方接口都会收费。2.创...

2018-08-05 12:47:49

阅读数 1017

评论数 0

java之内部类使用场景

1.匿名内部类经典案例(排序) public class Person { /** 姓名 **/ private String name; /** 年龄 **/ private Integer age; public Person(String na...

2018-08-04 16:25:22

阅读数 223

评论数 0

Java类初始化顺序

Java初始化顺序结论:  1 继承体系的所有静态成员初始化(先父类,后子类) (静态成员变量和静态代码块,谁初始化前后,和位置有关系) 2 父类初始化完成(普通成员的初始化-->普通代码块-->构造函数的调用)  3 子类初始化(普通成员--&...

2018-08-04 12:05:12

阅读数 61

评论数 0

java之数组和链表的区别

数组是有下标索引和data两部分组成链表是有data和指向下一个数据的指针地址两部分组成 数组的特点 在内存中,数组是一块连续的区域。 拿上面的看电影来说,这几个人在电影院必须坐在一起。 数组需要预留空间,在使用前要先申请占内存的大小,可能会浪费内存空间。 比如看电影时,为了保证...

2018-08-02 00:52:10

阅读数 1092

评论数 0

高并发解决方案

随着移动互联网发展,用户群体日益庞大,QPS和吞吐量等出现了技术上的高并发 本次对中小型企业高并发解决方案,不对地方请大家指正 先简单介绍下所用到的技术框架 SpringCloud、Ibatis、mysql、redis、RabbitMQ、Kafka、mongodb、sharding-jdbc、EL...

2018-07-29 13:19:05

阅读数 661

评论数 0

Internet基本协议以及TCP的3次握手和4次挥手

首先给大家看下Internet的7个协议 7 应用层 例如HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP 6 表示层 例如XDR、ASN.1、SMB、AFP、NCP 5 会话层 例如...

2018-07-28 15:44:24

阅读数 78

评论数 0

java死锁和解决方法

1.线程同步 多线程引发的安全问题 一个非常经典的案例,银行取钱的问题。假如你有一张银行卡,里面有5000块钱,然后你去银行取款2000块钱。正在你取钱的时候,取款机正要从你的5000余额中减去2000的时候,你的老婆正巧也在用银行卡对应的存折取钱,由于取款机还没有把你的2000块钱扣除,银行...

2018-07-28 14:17:34

阅读数 437

评论数 0

java多线程基础

线程与进程 1 线程:进程中负责程序执行的执行单元 线程本身依靠程序进行运行 线程是程序中的顺序控制流,只能使用分配给程序的资源和环境 2 进程:执行中的程序 一个进程至少包含一个线程 3 单线程:程序中只存在一个线程,实际上主方法就是一个主线程 4 多线程:在一个程序中运行多个任务 目...

2018-07-28 11:11:34

阅读数 55

评论数 0

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