- 博客(25)
- 收藏
- 关注
原创 golang-运行时-内存管理
用户程序读取对象、创建新对象以及更新对象指针时执行的一段代码,想要在并发或者增量的标记算法中保证正确性,我们需要达成以下两种三色不变性(Tri-color invariant)中的一种.Go 语言的内存分配器会根据申请分配的内存大小选择不同的处理逻辑,运行时根据对象的大小将对象分成微对象、小对象和大对象三种。运行时的内存分配器使用类似TCMalloc 的分配策略将对象根据大小分类, 并设计多层级的组件提高内存分配器的性能.栈空间不够的扩容问题, 和栈函数返回后缩容的问题.触发垃圾回收时做的检查。
2023-03-24 16:15:11
227
1
原创 golang-运行时-并发编程
网络轮询器并不是由运行时中的某一个线程独立运行的,运行时的调度器和系统调用都会通过 runtime.netpoll 与网络轮询器交换消息,获取待执行的 Goroutine 列表,并将待执行的 Goroutine 加入运行队列等待处理。它在内部启动了一个不会中止的循环,在循环的内部会轮询网络、抢占长期运行或者处于系统调用的 Goroutine 以及触发垃圾回收。线程和 Goroutine 的中间层, 提供县城需要的上下文环境, 也负责调度线程上等待执行的Goroutine队列.
2023-03-24 16:13:44
208
原创 golang-grpc-demo 测试
grpc dome安装环境变量添加代理 GO111MODULE=on GOPROXY=https://goproxy.io,direct # 私有仓库不走代理 GOPRIVATE=*.example.com安装 protobuf go get -u -v github.com/golang/protobuf/proto测试是否安装成功 protoc --version安装 protobuf golang 插件 go get -u -v
2020-09-17 10:15:22
991
原创 Dockerfile-gitlab-mongodb
docker 下搭建运行 gitlabsudo docker run -i \--hostname gitlab.pandamonk.com \-p :443:443 -p :80:80 -p :222:22 \--name gitlab \--restart always \--volume /home/conf/gitlab/config:/etc/gitlab \--volu...
2018-03-08 11:42:08
254
原创 docker 下搭建 mysql mysql-router
docker 下搭建 mysql(使用mysql-router做简单的负载均衡)/etc/docker/daemon.json 国内镜像加速{"registry-mirrors": ["https://registry.docker-cn.com"]}docker 运行容器命令docker run -i -t centos /bin/bash总是自动重启这个容器doc...
2018-03-08 11:38:18
1716
1
原创 使用 satis 结合 gitlab 搭建 composer 私有包仓库
使用 satis 结合 gitlab 搭建 composer 私有包仓库环境centos 7.3composergitlabnginx使用 安装 satiscomposer create-project composer/satis --keep-vcs配置 satis.json{ "name": "tuzuu", "homepage": "htt...
2018-03-08 11:34:53
2334
原创 编写一个 自己的 composer 私有包
编写一个 自己的 composer 私有包在 gitlab 上 创建一个项目 clone到本地git clone http://git.pandamonk.com/pandamonk/test.gitcd test目录结构.srcSayHello.phpSayHello.php 的文件内容<?php/*** this is a test for comp...
2018-03-08 11:32:53
2201
原创 PSR 标准 相关介绍
PSR 标准 相关介绍PSR 标准 是什么?* PHP Standards Recommendations *PHP 标准 建议是由一个 非官方的 组织 提出的一套PHP 编码标准. PHP-FIG, FIG 是 Framework Interoperability Group(框架可互用性小组)的缩写(http://www.php-fig.org/),由几位开源框架的开发者成立于...
2018-03-08 11:27:41
351
原创 nginx 多版本 php
nginx 多版本 phpphp7.2 官网下载 tar -xzvf …依赖 少什么 就安装什么yum -y install readline-devel libxslt libxslt-devel./configure --prefix=/usr/local/php72 \--exec-prefix=/usr/local/php72 \--with-config-file...
2018-03-08 11:21:39
1091
原创 JAVA 的垃圾回收机制
JAVA 的垃圾回收机制* HotSpot虚拟机 *分代收集在 java 堆区可以被分为 新生代(YoungGen) 和 老年代(OldGen), 新生代又细分为 Eden 空间, From Survivor空间, 和 To Survivor 空间. java 堆区内存图垃圾标记: 根搜索算法以根对象集合作为起始,按照从上至下的方式搜索被根对象集合所连接的目标对象是否可...
2018-03-08 11:18:45
286
原创 sed
sed* 语法格式 * sed [options] [sed-commands] [input-file]增删改查增 ** 一次可以追加多行内容(使用 \n) ** * a 在第几行后追加内容 # 在第二行后追加内容 sed '2a abc,abc,abc' test.txt * i 在第几行前插入内容 # 在第二行前...
2018-03-08 11:17:14
259
原创 AWK
AWK字段(域)与记录 $0 整行,一个记录 $1 第一个字段 $2 第二个字段 ... $NF 最后一个字段 以 FS 区分字段(域,列) 以 RS 区分记录(行)模式匹配* 正则表达式 * !~ 不匹配 awk "$1/^a/{print NR,$1,$NF}" test.txt # 匹配 tes...
2018-03-08 11:16:03
175
原创 Linux 常用命令
常用命令常见通配符>>><<<*!命令行常用快捷键ctrl + 左右键 —> 在单词间跳转ctrl + a —> 行首ctrl + e —> 行尾ctrl + k —> 剪切光标后面的内容ctrl + u —> 剪切整行的内容ctrl + l —> 清屏ctrl + y —>...
2018-03-08 11:14:30
178
原创 solr 配置 mmseg4j 分词器
# solr 配置 mmseg4j 分词器solr6.0.0mmseg4j-solr-2.4.0.jarmmseg4j-core-1.10.0.jarsolr 以 jetty 方式部署 (非tomcat)mmseg4j [GitHub地址](https://github.com/chenlb/mmseg4j-solr)# 将 mmseg4j-solr-2.4.0.jar 和 mmse...
2018-03-08 11:10:33
344
原创 solr 配置自动同步数据库数据(全量,增量)
solr 配置自动同步数据库数据(全量,增量) solr6.3.3 mysql-connector-java-5.1.45-bin.jar solr 以 jetty 方式部署 (非tomcat) * 1.将 mysql-connector-java-5.1.45-bin.jar 放到 ./dist下 * 2. 修改数据仓库下的配置文件 ./collocat...
2018-03-08 11:08:42
7352
1
原创 mysql 主从复制(其他)
mysql 主从复制之间默认的传输不是安全的, 非加密的. 主从复制之间可以搭建 ssl 链接.使用 mysql 内置的 ssl 链接. 需要 mysql 服务器在编译时支持ssl.master 配置[mysqld]ssl-capath=/etc/ssl/certsssl-cert=/etc/ssl/certs/master.pemssl-key=/etc/ssl/private...
2018-03-08 10:58:09
197
原创 mysql 主从复制-配置
配置复制 - 全新的开始配置mastermaster 开启二进制日志全局唯一的服务器ID在 master 创建一个拥有复制权限的复制用户配置文件加入以下配置项:...[mysqld]......log-bin = master-binlog-bin-index = master-bin.indexserver-id = 1 #此id最好做好规划........
2018-03-08 10:56:47
211
原创 高性能Mysql读后感(四)查询优化-mysql 查询执行的基础
mysql 查询执行的基础语法解析器和预处理* 解析器 *处理语法和解析查询, 生成一课对应的 “解析树”. —> mysql 语法层面 .* 预处理器 * 进一步检查解析树的合法性. 如: 数据表和数据列 是否存在, 别名是否有歧义等, 还会进行权限认证.查询优化器将 解析树 转换为 执行计划.一条查询可以有多种执行方式, 都会返回同样的结果. 优化器的...
2018-03-08 10:54:01
286
1
原创 高性能Mysql读后感(三)-其他一些关于索引的话
其他一些关于索引的话建立索引* 所建立的索引最好支持多种过滤条件 ** 在所建立的索引列上避免多个范围条件 ** 过滤数据的同时最好能照顾到排序 *维护索引和表找到并修复损坏的表 ( corruption )分为 * 索引损坏 * 和 * 数据损坏 *check table 来检查是否发生了表损坏 (MyISAM友好) repair table 修复损坏的...
2018-03-08 10:51:36
654
1
原创 高性能Mysql读后感(二)-高性能索引
高性能索引1. 独立的列索引列不能是表达式的一部分, 也不能是函数的参数. /* 不能使用 user_id 列上的索引 */ select … where user_id + 1 = 5; /* 不能使用 date 列上的索引 */ select … where TO_DAYS(CURRENT_DATE) - TO_DAYS(date) <=10; 始终将索引列单独放在...
2018-03-08 10:49:18
363
1
原创 高性能MySQL读后感(一)
mysql 索引索引 是 存储引擎 用与快速找到记录的一种数据结构. 这是索引最基本的功能. 在 mysql 中, 存储引擎用类似的方法使用索引, 先在索引中找到对应的值, 然后根据这些值去找到对应的数据行. mysql 的索引的 左原则 索引可以包含一个或多个列的值. 如果索引是多个列, 那么需要注意列的顺序, 因为 mysql 只能高效的使用 最左前缀列(重点). ex: i...
2018-03-08 10:46:42
768
原创 Git Tag(标签)
Git Tag(标签)tag 和 commit 一一对应的关系 标签也是版本库的一个快照1. 创建标签// 打在最近一次 commit 上的git tag <tag-name>//打在某个 commit 上的git tag <tag-name> commit_id// 创建带说明的标签: -a <tag-name> -m 'some c...
2018-03-08 10:44:38
222
原创 Git Branch(分支)
Git Branch(分支)1. 查看分支git branch2. 创建分支git branch <branch-name>3. 切换分支git checkout <branch-name>4. 创建 + 切换分支git checkout -b <branch-name>5. 合并某分支到 当前...
2018-03-08 10:43:51
2736
原创 Git基础操作
Git基础操作1. 创建版本库git initgit add readme.mdgit commit -m 'wrote a readme.md'2.查看当前状态git status3.查看某个文件差异git diff readme.md4. 版本回退// 回退到 commit_id 版本git reset --hard commi...
2018-03-08 10:42:34
160
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人