自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java技术圈上线啦,欢迎常驻~~~

Java技术圈一个开放,和谐,互帮互助,知识分享的IT技术社区。旨在为解决各种实际运用的技术问题和相关技术分享而成立的问答,知识分享社区。目前主要对标服务于Java,Golang,容器技术Docker,Kubernetes,以及机器学习相关生态 欢迎大家常驻 http://www.itsharecircle.com进群送千G学习资料 微信扫描如下二维码(或者微信搜索用户Anteoy)添加我为好...

2019-04-24 15:56:19 662

原创 [Golang]两个对象的指针相同,一定是同一个对象吗?

开门见山今天发现一个十分有趣的case,如下:package mainimport "fmt"func main() { n1 := make ([] int, 0,5) n2 := n1[:2] fmt.Println(n1) fmt.Println(n2) // 思考 n1和n2打印出的指针地址是否相同? fmt.Printf("address of n1:%p\n",...

2020-03-11 10:49:32 1986

原创 java golang tcp socket导致线上服务器出现大量close_wait的完整示例

tcp断开连接的四次挥手先说说tcp的四次挥手,这里假定A端为主动发起关闭端,B端为被动接收关闭请求端。A把tcp的数据包中标识位FIN置为1,seq为一个随机数,发送这个包给B端,自己进入FIN_WAIT_1状态;B端收到了马上给A端回复ack(A端收到ack进入FIN_WAIT_2状态),然后自己进入CLOSE_WAIT状态。然后这个时候需要业务代码处理,把自己需要发给客户端的数据发送完,然...

2019-05-21 11:51:01 1848

原创 Java IO流源码笔记

概览Java中的IO源为4个抽象类,2个字节流相关抽象类InputStream,OutputStream. 2个字符流相关抽象类Reader,Writer.直接联系是都实现了Closeable接口,另外,整个IO的代码基于装饰者模式设计,存在大量的组合 > 聚合 > 关联 > 依赖关系,不了解UML模型图和关系的可以点击这里快速了解。我这里为了UML图的可读性,没有打开dep...

2019-04-11 17:38:29 605

原创 JDK常用设计模式整理

观察者模式jdk中有提供接口Observer 和用于定义subject的类Observable subject.addObserver(new ObserveTest()); subject.set(3); subject.setChanged(); subject.notifyObservers(3);subject持有一个Vector(线程安全的list),用于存储addOb...

2019-04-11 14:59:49 1742

原创 Java ThreadPoolExecutor源码笔记

概要速记接口Excutor->接口ExutorService->抽象类AbstractExcutorService->类ThreadPoolExcutor线程达到上限策略corePollSize->blockQueue->maxPollSize->handleblockQueue参数如果使用LinkedBlockQueue则会使maxPollSize参数无...

2019-04-11 14:02:37 385

原创 Java String源码笔记

源码实现了3个接口 Serializable Comparable CharSequence关于CharSequenceJava从String类和StringBuffer类开始。但是这两个类是无关的,没有通过继承和接口相互联系。后来,Java团队意识到字符串相关实现之间应该存在统一的联系,以使它们可以互换。在Java4中,团队添加了CharSequence接口并在String和String ...

2019-04-09 17:35:00 454

原创 java和golang中的unsafe包

首先聊聊反射java和golang都有各自的反射机制,为什么标准库会提供反射机制呢?反射(reflection)允许程序在运行时(runtime)检查、修改程序(比如对象,struct等)的结构与行为,跳过编译检查,越过访问权限,运行时对象生成,方法调用等。如果没有反射,那么需要完全手动进行硬编码,比如如果没有反射,那么在spring的ioc容器管理实现就需要我们使用new来创建对象,那么也就...

2019-03-22 18:02:16 619

原创 浅析字节存储序列的大小端存储方式

基础内存地址是从低地址开始进行编号的,用16进制来进行编号,比如内存的开始地址(即低地址)0x0000,然后内存偏移以字节为单位,比如0x0001表示从0x0000位置偏移到后面1个字节,即偏移8bit.字节的高低位是俗成约定的,比如字节序列0x12345678,由于一个16进制的转为2进制占四个2进制(2^4=16,进制转换基础),那么0x12则可以转为8个二进制,也就是8bit=1byte,...

2019-03-22 11:49:35 1369

原创 速查jvm字节码指令

id: 78date: 2019-03-13 18:56:00title: 速查jvm字节码指令categories:- javatags:- java jvmJVM指令集参考0x00 nop 什么都不做0x01 aconst_null 将null推送至操作栈栈顶0x02 iconst_m1 将int型-1推送至操作栈栈顶0x03 iconst_0 将int型0推送至操作栈...

2019-03-13 19:00:49 487

转载 CS231n课程笔记翻译:反向传播笔记

译者注:本文智能单元首发,译自斯坦福CS231n课程笔记Backprop Note,课程教师Andrej Karpathy授权翻译。本篇教程由杜客翻译完成,堃堃和巩子嘉进行校对修改。译文含公式和代码,建议PC端阅读。原文连接https://zhuanlan.zhihu.com/p/21407711?refer=intelligentunit原文如下:简介目标:本节将帮助读者对反向传播形成直...

2018-12-06 18:16:32 654

原创 java.lang.OutOfMemoryError:GC overhead limit exceeded

前言在我们写的java service里,需要加载一个比较大的算法模型pmml文件.在此模型文件由500M+变为1G+的时候,在测试环境中出现了此问题异常由来 GC overhead limt exceed检查是Hotspot VM 1.6定义的一个策略,通过统计GC时间来预测是否要OOM了,提前抛出异常,防止OOM发生。Sun 官方对此的定义是:“并行/并发回收器在GC回收时...

2018-08-20 15:52:26 970

转载 SolrCloud概览

id: 75 date: 2018-08-15 23:44:00 title: [转]SolrCloud概览 categories: - 转载 tags: - solr solrCloud转自——找不到出处了。。ref->这里简介SolrCloud是Solr4.0版本以后基于Solr和Zookeeper的分布式搜索方案。SolrCloud是...

2018-08-15 23:51:28 486

原创 自建对象存储服务minio在使用nginx进行反向代理时出现对象无法正常共享的解决办法

什么是minio Minio是在Apache License v2.0下发布的对象存储服务器。它与Amazon S3云存储服务兼容。它最适合存储非结构化数据,如照片,视频,日志文件,备份和容器/VM镜像等。对象的大小可以从几KB到最大5TB。docker 安装示例docker run -p 9000:9000 --name minio1 -e "MINIO_ACCES...

2018-08-10 18:44:24 13651 2

原创 分布式版本控制系统mercurial hg常用命令

mercurialmercurial是一种轻量级分布式版本控制系统,采用 Python 语言实现,易于学习和使用,扩展性强。其是基于 GNU General Public License (GPL) 授权的开源项目。由于目前工作需要使用mercurial,这里记录下自己使用到的常用命令,作为参照,不定时更新。常用命令配置好类似git的ssh,使用hg clone ssh://co...

2018-07-11 17:35:52 684

原创 解决kubernetes宿主机top cpu wa io过高引起的cpu资源耗尽问题

环境cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) sudo docker versionClient: Version: 17.10.0-ce API version: 1.33 Go version: go1.8.3 Git commit: f4ffd25 Built: ...

2018-05-25 21:17:52 12037

原创 浅谈c++面向对象的封装,继承和多态

封装c++的封装体现在class关键字上,一个类的定义将数据与操作数据的源代码进行有机的结合,形成一个“类”,封装一些具体实现,按需对外暴露部分属性和方法。 class BaseClass{public: int a; void test1(); virtual void printFunc(){ cout<<"This is Base...

2018-05-23 22:33:35 1220

原创 vim常用命令

三模式命令模式 (command mode) -> 默认模式插入模式 (insert mode)-> i 进入底行模式 (last line mode) -> 输入 :常用命令光标移动使用上下左右方向键命令模式下:h向左、j向下 、k向上、l向右。插入文本或行vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退出...

2018-05-19 14:41:26 444

原创 ubuntu 16.04 解决有线网卡驱动Exec format error问题

前言ubuntu 16.04的工作本,有线网卡总是出一些比较坑的问题,比如有时候能用有时候突然又不能用了,有时候开机没问题正常使用,有时候开机完全找不到有线连接,同时,个人使用习惯会经常休眠,而休眠唤醒过后,有线网就肯定不能用了.原本比较少用有线网络,这个工作本的有线网络也没有怎么管它.另外这个本也有好几年了,原本以为是网卡接口接触不良,最近公司的无线网络越来越难用,越来越慢,于是就好好看了下...

2018-05-14 13:52:30 6777

原创 我理解的Linux IO模式及select,poll,epoll

前言本文是在本人查阅部分资料,并综合了众多博客分析后,于此阐述的个人理解。若有错误,欢迎指正。基本概念用户空间和内核空间 操作系统核心-内核负责处理用户程序和硬件之间的驱动交互。内核是在用户程序(进程)和硬件之间一个中枢。目地:专门负责用户进程和硬件之间的交互,用户程序必须使用内核才能和计算机底层硬件进行交流。为了保证内核的安全,于是将内存划分开,比如针对linux 4G的内存空间,将最高的1G

2018-04-22 11:03:35 678

原创 在kubernetes集群上使用istio遇到的问题

前言按照官方文档安装完成,并检查安装好以后。部署官方示例bookInfo,以及插件grafana,zipkin,promeuthes。本以为后面的使用会十分顺畅,结果不尽人意,发现把测试环境的一个用户中心微服务交给istio管理的之后,居然其他微服务和此为服务之间完全无法相互调用了。后面发现了三个坑。QAistio的微服务如果需要调用外部的http或者grpc等服务,需要使用Egress(意思是出

2018-04-22 11:01:16 2242

原创 kubernetes下搭建harbor企业级docker仓库

前言harbor是由vmware开源的企业级docker repository,提供私有仓库,安全认证,权限管理,漏洞扫描及仓库复制等多种功能,因为之前搭建的harbor在线上环境存在各种各样的问题(之前搭建的方式目前发现已被官方宣布弃用https://github.com/vmware/harbor/blob/master/docs/kubernetes_deployment.md,如ui显示不正

2018-03-27 17:08:03 4116 1

原创 使用pandoc xelatex转换md文档为pdf

环境系统为ubuntu 16.04,其他linux发行版理论上可参考官方安装文档过程安装pandocsudo apt install pandoc安装texlive-xetex(解决不能转换中文问题) sudo apt-get install texlive-xetex 查看系统已安装的中文字体fc-list :lang=zh/usr/share/fonts/truetype/wqy/

2018-02-16 23:49:15 2862 1

转载 Kubernetes环境下的各种调试方法

作者:Jack47转载请保留作者和原文出处欢迎关注我的微信公众账号程序员杰克,两边的文章会同步,也可以添加我的RSS订阅源。本文介绍在Kubernetes环境下的调试方法启动单个容器 不使用Pod或Replication Controller,启动单个容器: $ kubectl run webserver --image=nginx 想更改镜像,又不想升级版本?

2018-01-26 13:59:22 2287

原创 使用 let's encrypt certbot部署https网站

前言let’s encrypt 是免费的ssl/tls 证书颁发的机构,致力于实现整个Web的TLS/SSL认证。https可降低网站被劫持的风险,并具有更好的加密性能,避免用户信息泄露,增强网站的安全性。准备已解析正确的域名 www.anteoy.siteA记录所指向的服务器nginx环境GCE ubuntu16.04let’s encrypt认证

2018-01-14 23:33:10 1631

原创 kubernetes下用logstash代替efk中的fluentd

前言目前我们的系统架构,从阿里云的docker compose(swarm)迁移到了自建的kubernetes,而我们的日志系统也几经周折。从最开始的阿里云docker compose(swarm)环境下的elk + kafka,使用了一段时间后由于老板觉得阿里云的kafka收费价格不怎么划算,并且线上服务器的资源吃紧,然后切换到了阿里云的日志服务。线上切换到kubernetes以后,又使用e

2018-01-09 17:14:57 3545 2

原创 使用nginx解决k8s traefik中basic auth的跨域问题

目地目前k8s ingress是配合traefik使用的,此时需要对某一个域名添加一个basic auth安全认证,原本traefik也可以正常配置(生产环境已有不少使用traefik basic auth),但是由于此处的域名需要在其他web域中调用,涉及到跨域问题,参考traefik文档未发现在k8s有关联说明解决basic auth相关跨域问题。后来分析了下nginx下的basic auth,

2018-01-09 16:24:56 2942

转载 手动搭建高可用的kubernetes 集群

本文转载自:https://blog.qikqiak.com/post/manual-install-high-available-kubernetes-cluster/,本人根据此博文和相关资料,成功用二进制搭建了kubernetes集群,非常感谢原作者的分享。故征得同意后转载此文。本文和原文都会不定期更新,同时记录相关的环境问题和个人经验。之前按照和我一步步部署 kubernetes 集群的步骤

2018-01-02 18:48:49 8234 3

原创 mysql Innodb单表31m千万级数据count计数方案及调优

ENV线上环境为RDS,版本5.7.15 select version() output: 5.7.15-log 测试环境为docker搭建的mysql,版本5.7.19 select version() output: 5.7.19 单表3000万+的class表以及20万+的学校表,需要使用count查询实时数量用于分页,延迟不能太高,否则影响业务因需要使用事务功能,使用

2017-10-27 14:26:43 8159

原创 opensuse下安装网易云音乐netease-cloud-music

安装环境 opensuse 42.3(理论上仓库中列出的支持版本都可以用此方法安装)官方软件仓库搜索netease,也可直接点击此处打开:https://software.opensuse.org/package/netease-cloud-music?search_term=netease选择对应版本,点击Source下载源码,我这里下载的对应版本为42.3,得到如下文件(注意这里点击1 C

2017-10-04 22:49:37 5838

原创 archlinux下网易云音乐netease-cloud-music部分问题

个人为网易云音乐重度用户,从ubuntu到arch后,感觉netease-cloud-music在ubuntu中支持更好,毕竟linux下的netease-cloud-music是由网易云音乐和深度deepin联合开发的,ubuntu有官方的deb包,arch的aur中的netease-cloud-music是基于此deb进行打包的,在体验上没有差别,在arch中用起来感觉也还不错,在此记录下使用过

2017-09-21 22:33:52 13610 2

原创 archlinux安装教程以及自己踩过的坑

引言:  linux是一种哲学。最近喜欢上了arch的简洁,可高度定制化,滚动更新和设计哲学,准备日常办公从ubuntu转向arch,目前已完成安装,正在使用arch写这篇博客,而事实证明arch确实没让我失望,它的确是一个非常不错的发行版.安装环境:cpu: i5 ram:12G 台式电脑一块硬盘(有剩余空间或新硬盘都可以,我这里用的是1T新硬盘,GPT分区,UEFI启动)一块8G U盘从

2017-09-03 13:59:26 21412 2

原创 Rancher部署kubernetes爬坑记

引言: 本文不会记录详细的部署过程,仅记录下使用Rancher部署kubernetes踩过的几个小坑,如果你需要详细的部署过程,可以参考此处官方教程,这里面有详细的部署说明,另外可同时参考下此文,也许对你在部署中遇到的问题有所帮助。由于个人能力有限,如有不当之处,欢迎指正。环境一台ubuntu 16.04 服务器 作为Rancher Server 宿主机,并且加入k8s集群一台virtualbo

2017-08-31 21:22:32 8291

转载 红黑树(一)之 原理和算法详细介绍

原文作者:Sky Wang    于 2013-08-08  概述:R-B Tree,又称为“红黑树”。本文参考了《算法导论》中红黑树相关知识,加之自己的理解,然后以图文的形式对红黑树进行说明。本文的主要内容包括:红黑树的特性,红黑树的时间复杂度和它的证明,红黑树的左旋、右旋、插入、删除等操作。请尊重版权,转载注明出处:http://www.cnblogs.com/skywang12345

2017-07-26 22:08:20 483

原创 git submodule以及被忽略的.gitignore

引言: 不积跬步,无以至千里;不积小流,无以成江海。原本自以为对git相关的东西以及原理已经有了不错的认识和理解,然而当碰到一个小小的problem才发现自己掌握得并没有自己想象的那么好,好记性不如烂笔头,于是决定把自己对.gitignore以及submodule的部分理解简单记录下来,由于个人能力有限,如有不当之处,欢迎指正。  git submodulegit submodule在项目中虽一直

2017-06-25 23:48:22 7522

转载 Ubuntu如何正确地切换Intel和Nvidia显卡

如需转载,请注明"来自linux大神博客",并附上原文链接。本文固定链接 https://www.linuxdashen.com/switch-intel-nvidia-graphics-card-ubuntu本文转载自:https://www.linuxdashen.com/switch-intel-nvidia-graphics-card-ubuntu现在的笔记本电脑通

2017-06-02 21:29:56 40647 7

原创 golang中new和make简析

引言:  目前简单梳理了golang的知识点,进行查漏补缺,这里简要记录下golang中的make和new,由于个人能力有限,如有错误,欢迎指正。正文:1. make 分配了一个有初始值(非零)的T类型(我这里打印的为空,个人理解为空值)返回值 当slice cap无法满足需要,则在初始大小cap(即第三个参数,这里为6),成倍增长2. new 分配了零值填充的T类型的内存空间,并返回其地址(指针

2017-05-31 23:18:49 835

翻译 sarama GoDoc 简译

引言:  目前使用golang接入kafka,于是便用到了github.com/Shopify/sarama,一个kafka的golang client library,但官方doc中尚无中文版本,于是本人在这里捉襟见肘做一个简单地翻译,作为自己的一个点滴记录和查阅,如果能够帮助到你一点点,我会非常高兴的。另外,由于本人能力有限,若有不当之处,欢迎指正。正文:package saramaPackag

2017-05-17 01:11:33 7038

转载 [Golang] 深入研究 Visual Studio Code for Golang

本文转载自:http://www.evanlin.com/dive-with-vscode-golang/感谢evanAPRIL 18TH, 2016前提Visual Studio Code (以下簡稱: VS Code) 是微軟的跨平台的開源 IDE ,目前已經進入了 1.0 的正式版本. 由於功能強大,預設就能 debug python, node.js

2017-05-02 21:15:32 1305

转载 iptables详细教程:基础、架构、清空规则、追加规则、应用实例

本文出自 Lesca技术宅,转载时请注明出处及相应链接。本文永久链接: http://lesca.me/archives/iptables-tutorial-structures-configuratios-examples.htmliptables防火墙可以用于创建过滤(filter)与NAT规则。所有Linux发行版都能使用iptables,因此理解如何配置iptabl

2017-04-20 21:49:11 3779

空空如也

空空如也

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

TA关注的人

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