自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 企业微信对接注意事项

企业微信接口调用根据 corpId 和 corpsecret 获取到相对应接口的 accessToken, 注意获取到的 accessToken 的接口访问权限要看具体应用的配置。如何判断接口调用是否成功?errcode存在且不为0判断为失败,否则为成功开发者工具:https://work.weixin.qq.com/api/doc/90000/90138/90678全局错误码:https://work.weixin.qq.com/api/doc/90000/90139/90313

2020-08-01 08:45:27 634

原创 PHP PSR代码规范

PSRPSR1PSR2

2020-07-09 10:30:22 125

原创 vue常见问题处理

插值表达式加载闪烁问题: <h1 v-cloak> {{msg}} </h1> [v-cloka] { display: none; }

2020-06-19 21:34:27 167

原创 ubuntu18.0.4 LST 安装 docker

sudo apt-get autoremove dockersudo apt-get updatesudo apt-get -y install apt-transport-https ca-certificates curl software-properties-commoncurl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -sudo add-apt-repository "de

2020-05-25 16:50:36 170

原创 Linunx 安装 open-jdk

下载 合适的jdk版本: openjdk下载移动到自己想放的位置:mkdir /usr/lib/jdkcd /usr/lib/jdk; tar -xzvf jdk.11.0.2.tar.gz;设置环境变量:方案一:修改全局配置文件,作用于所有用户:vim /etc/profileexport JAVA_HOME=/usr/lib/jdk/jdk.11.0.2export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:JAVAHOME.

2020-05-11 19:20:56 175

原创 Red Hat 7 替换yum 源

最近想好好的学一下Linux,所以拜读了一下《Linux就应该这样学》这本巨著,第一章中教我们搭建学习环境,安装完rhel7 之后很郁闷的是yum竟然不可用,不是付费用户,处处受制。好的吧,有没有解决办法嘞,自然是有的要不然也就没这篇文章了不是。 精彩在下面。这里使用的是centos 的 yum源,下载链接在这里检查是否已经存在有yum 安装: rpm -qa | grep yu...

2019-11-23 17:52:59 500

原创 Typescript 类型

Typescript 的数据类型 除了javascript中常见的类型外还有几个新面孔,下面让我们来看看具体都有哪些?Tuple 允许表示一个已知元素数量和类型的数组,各元素的类型不必相同。// Declare a tuple typelet x: [string, number];x = ['hello', 10]; //Ok// Initialize it incorrect...

2019-06-12 17:45:54 123

原创 SSL 证书链 是否合法,怎么看?

话不多说有很多工具可以帮我们检查:https://www.godaddy.com/ssl-checkerhttps://www.geocerts.com/ssl-checkerhttps://www.sslchecker.com/sslcheckerhttps://www.digicert.com/help/https://www.ssllabs.com/ssltest/https:/...

2019-06-06 16:16:03 1359

原创 更新网站证书后的那些事er

更新证书之后,发现之前跑的好好的java 程序不work了,纳尼。。。查日志,发现敌军:The request failed. sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unab...

2019-06-06 16:04:17 614

原创 Spring security 散记

Spring-security-configWeb/HTTP SecurityBusiness Object (Method) SecurityAuthenticationManagerAccessDecisionManagerAuthenticationProvidersUserDetailsServiceShould configure springSecurityF...

2019-05-23 09:10:50 91

原创 HeadFirst 设计模式 第二章

拿气象台为例,气象台的数据要展示在不同的显示屏上,不同屏幕显示的数据格式不尽相同。对于这种类似场景使用观察者模式就没差了。气象台作为拥有数据的一方,并不需要知道数据的具体的处理方式。而对于不同的显示屏,则关注的是拿到数据并处理。并且这里存在对象之间一对多映射关系,一个气象台对应多个显示屏。依据OO设计原则,我们要针对接口编码,而不是具体实现。所以在这里可以考虑抽象具体的显示实现接口。气象台作为...

2019-04-09 16:43:44 97

原创 HeadFirst 第一章

抽象类还是接口?抽象类定义对象的基础属性,不易改变。接口则定义对基础对象的扩展,并且为了代码复用,使用独立的类实现接口的方法。在扩展时将基础对象和行为对象就像组合。解决的问题:代码在多个子类中重复运行时的行为不容易改变改变父类会牵一发动全身,造成其他不想要的改变实现了代码复用设计原则:找到应用中可能需要变化之处,把它们独立出来,不要和哪些不需要变化的代码混在一起针对接口...

2019-04-08 17:34:44 96

原创 JVM 参数积累

MetaspaceSize=256M 不设置大概为20M左右MaxMetaspaceSize=256M 用于设置metaspace区域的最大值AutoBoxCacheMax = 20000 在jvm加载rt.jar时会自动设置一个Integer cache, 默认为范围为 -128 ~ 127. 我们可以通过这个参数进行设置AlwaysPreTouchJVM启动时,我们虽然可以为JVM指...

2019-03-21 10:55:46 87

原创 How to harden Docker images

Using the init process is the bset way to launch multiple programs, clean up orphaned processes, monitor processes, and automatically restart any failed processes.What need to consider when using ini...

2019-03-13 17:47:34 173

原创 Docker 之 打包

今天我们来谈一谈怎样保存对一个容器的修改,生成自己的镜像。先来看一个例子,然后详细分析一下每一步具体都做了什么:docker run --name hw_container ubuntu:latest touch /helloworld启动一个容器,并创建一个 helloworld 目录docker commit hw_container hw_image将我们之前所作的修...

2019-03-06 17:27:04 235

原创 mysql 索引 碎片积累

show index form table_name:Cardinality 在某列上不重复值的数量,对索引而言该值越大越好seq_index 代表列在复合索引中的序号analyze table user_profile; 触发采样&amp;gt; 5.6 show create table table_name 不触发创建索引:高选择性的字段不重复值较多的列不带orde...

2019-03-06 13:22:28 683

原创 Docker 之 资源

Docker 资源隔离技术涉及linux八个命名空间的使用同时docker还提供了一些选项让我们能够对mem, cpu, devices 进行分配。

2019-03-01 08:37:19 216

原创 Docker之网络

今天我们来谈一谈docker的网络结构, 不知各位看官在使用docker的时候有没有想过为什么docker 容器在启动之后我们就可以下载安装需要的应用了呢?今天我们就来一起谈谈这个秘密。docker共有四种网络结构,分别是closed containers, bridged containers , joined containers, open containers从左到右容器的隔离性越来...

2019-02-27 18:58:16 198

原创 Docke: ubuntu安装

虚拟化,容器化技术的蓬勃发展,使devops的工作变的更加的轻松和简洁。Docker是目前较流行的容器技术,今天我们就来谈一下Docker基础。真的只是基础----安装这里我们安装的是社区版。旧的不去新的不来,我们先卸载掉低版本的docker, 若没有安装的请跳过。旧版本的Docker的名字是docker 或者 docker-engine, 所以我们可以使用下边的指令去卸载。sudo ap...

2018-12-03 18:58:45 272

原创 并发基础

线程的三大特性:原子性 2. 可见性 3. 有序性处理器为了提高程序的运行效率,可能会对输入代码进行优化,但不保证程序中各个语句的执行先后顺序同代码中的顺序一致,但是会保证执行的结果一致。 int a = 10 #1 int r = 2 #2 a = a + 3 #3 r = a*a #4重排序,执行顺序可能为 2-1-3-4, 1-3-2-4。思考:为什么...

2018-11-28 14:10:15 128

原创 集合之HashMap

今天我们来聊一聊HashMap中的一些要点。HashMap的核心是哈希表,而哈希表的主干是数组通过(n - 1) &amp; hash(key) 获取数组下标哈希碰撞常用的解决方法:(1) 开放地址法(发生冲突,继续寻找下一个未被占用的存储地址) Hi=(H(key)+di) MOD m i=1,2,…,k(k&lt;=m-1)(2) 再哈希法(3) 链地址法HashMa...

2018-11-27 15:38:19 98

原创 Hadoop 安装及伪分布模式配置

安装下载 jdk x64版本tar -xzvf jdk-8u191-linux-x64.tar.gz /usr/soft解压文件到/usr/soft目录下配置环境变量打开environment : sudo vi /etc/environment配置:JAVA_HOME="/usr/soft/{jdk_unzip_name}"配置:PATH="XXX:/usr/soft/{jdk_...

2018-11-25 20:03:20 164

原创 产品之道

“我们用什么方法为谁解决了一个什么问题”。这里的“我们”就是组织,是团队,“什么方法”是指我们的核心业务,是服务,“谁”是指我们的目标用户,是客户,“什么问题”是指核心需求,是场景。这个过程不需要用到什么工具或特别的方法,只需要做到组织和团队的理解共识,通过文字记录下来即可,关键是思考清楚。通过对关键问题定义,回答清晰后就可以进入下一步,对业务流程进行完整的梳理了。梳理业务流程:...

2018-11-23 10:56:27 172

原创 For循环和Iterator的性能分析

问同学一个问题,我有一个列表,该怎么遍历它呢?你会讲So easy, 用for呀,所以你会看到如下code:for(String item : list) {}但是这样真的好吗?元芳你怎么看?这里小编做了一个测试,比较了一下它和Iterator的执行效率,这不就有了这边文章。代码如下: List&amp;lt;String&amp;gt; list = new ArrayList&amp;lt;String...

2018-11-22 11:15:33 2240 1

原创 以太坊系列(二)geth构建私链

上一讲,我们介绍了geth的安装,以及一些基本命令,今天我们谈一下怎么用geth构建一条私有链,在这个过程中会更进一步的体会以太坊的工作流程。若您还没有安装geth请看笔者的上一篇博文,或点击这里要构建一条私链,我们要初始化一个创世区块,创始区块的初始信息我们放在一个名为genesis.json的文件中,那么文件里写些什么内容呢?geth的官网给我们了一个模板:{ "config": {...

2018-11-21 18:45:03 113

原创 开发手册

强制:不能以下划线美元字符开头和结尾 _name, name,name,namename, name_, namename,name,​name 都是不允许的。 jvm底层的一些代码是以这种方式命名的例如:内部类编译之后a$bdbcp2中的变量全部都是_开头起名不能用中文,英文和拼音混搭风也不允许 例如:getPingFenByName类名使用大驼峰方式,帕斯卡命名法命名要...

2018-11-21 13:38:03 134 1

原创 架构探险(三)自定义类加载器

今天我们来谈一谈架构探险中自定义的类加载器,一般我们若想实现自定义的类加载器,可以继承ClassLoader类,然后实现findClass方法即可,详细介绍可以看以下链接:https://www.cnblogs.com/doit8791/p/5820037.html本文主要谈一下架构探险中的实现方式。在getClassLoader方法中我们拿到的实际上时当前线程的ClassLoader。然...

2018-11-20 18:02:02 90

原创 以太坊系列(一)搭建环境,部署第一合约

安装gethsudo apt-get install software-properties-commonsudo add-apt-repository -y ppa:ethereum/ethereumsudo apt-get updatesudo apt-get install ethereum注: 笔者这里用的是ubuntu系统,若您使用的是其他系统,请自行百度检查安装...

2018-11-19 19:04:02 241

原创 架构探险(二):DBUtils简单使用

继续我们的冒险体验,之前综述了一些构建一个项目的大致流程,相信大家对于系统的框架已经了然于胸。 今天我们就来谈一谈,如何构建数据的桥梁。这里我们使用commons-dbutils 来简单的封装一个jdbc template, 帮助我们实现快速的CRUD. 废话不多讲直接上代码。package org.foothold.learn2.helper;import org.apache.comm...

2018-11-19 16:08:54 108

原创 ThreadLocal & InheritableThreadLocal 使用的一些坑

ThreadLocal在与线程池结合使用时可能会出现数据复用线程池把线程提交到队列,当被调用的时候如果存在空闲线程就回直接复用线程,仅仅是调用了用户提交线程的run方法。所以当ThreadLocal参数使用完,记得调用remove方法。public class B { static final ThreadLocal&amp;lt;String&amp;gt; threadParam = ...

2018-11-16 17:46:11 2576

原创 架构探险 (二)

系统设计秘籍:设计用例设计表结构设计原型界面这里我们推荐使用Balsamiq Mockups软件,它可以帮助我们快速的画出界面原型设计URL通过界面之间的跳转与操作,我们可以分析出合适的URL.数据模型业务流程注意开发阶段和设计阶段,都是由粗到细、由表及里,千万不要一开始就陷入到具体的实现细节里去了,不妨先搭起来一个框架然后用一系列TODO来表明我们...

2018-11-14 18:04:15 175

原创 区块链积累

比特币的工作量机制是为了平衡多台机器竞争所导致的账本不一致问题比特币系统每10分钟产生一个区块。在进行工作量证明之前,会做的工作是什么呢? 1. 收集广播中还没有被记账的原始交易信息 2. 检查每个交易信息中付款地址有没有足够的余额 3. 验证交易是否有正确的签名 4. 把验证通过的交易信息进行打包记录 5. 添加一个奖励交易,给自己的地址增加12.5个比特币什么是工作量证明:即...

2018-11-12 14:23:11 238

原创 ubunut 本地软件源制作

sudo apt-get install dpkg-devmkdir ~/softwarecp -R -v /var/cache/apt/archives/* ~/softwaresudp dpkg-sanpackages ~/software /dev/null | gizp &gt; ~/software/packages.gz复制整个software目录到host主机安装新的ub...

2018-11-11 19:12:20 115

原创 Mysql view中merge和temportary

merge: 引用视图的语句和定义视图的语句合并生成一条新的查询语句,查询实体表temportary: 定义视图时创建一张临时表,搜索时查询的是该临时表通常不用定义,mysql 自己选择详细参考 View...

2018-11-11 13:51:35 1035

原创 mysql 按周进行分组 & Rank

selectADDDATE(‘1970-01-05’, INTERVAL FLOOR(DATEDIFF(nowtime, ‘1970-01-05’) / 7) * 7 DAY) as start,ADDDATE(‘1970-01-05’, INTERVAL FLOOR(DATEDIFF(nowtime, ‘1970-01-05’) / 7) * 7 + 6 DAY) as endGROUP ...

2018-11-10 19:37:22 1043

原创 mysql_secure_installation — Improve MySQL Installation Security

mysql_secure_installation 是一个提高我们线上数据库安全级别的工具,它会帮我们做什么事情呢,请看详情:提示我们为root 用户设置密码删除匿名用户要求我们设置密码强度删除test 库禁止远程 root用户的登陆这么多功能是不是拭目以待了,它的使用也非常简单,只需要在命令行输入 mysql_secure_installation 就可以了。具体的参数配置请参...

2018-11-09 10:28:40 300

原创 Linux : mysql 多实例安装

今天我们来谈谈 linux下 mysql 多实例的安装。有些小伙伴可能会问为何要安装多实例呢?在项目中是否推荐一台机器安装多个mysql实例呢?各位看官别着急,容我慢慢向您道来。。。首先我们来讲讲多实例安装的好处:一般项目中数据库服务器或多或少呢都存在性能过剩的情况,多个mysql实例可以更好的利用设备硬件资源。当然啦如果您的机器跑一个mysql都如老汉推车,额好吧,老牛拉车一般,那么多实例...

2018-09-21 19:19:15 1394

空空如也

空空如也

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

TA关注的人

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