Gitlab搭建和基本操作
由于近期工作的原因,项目中引入了gitlab作为规则引擎中规则版本进行管理,所以需要搭建gitlab,故记录下搭建过程已备以后查看。
1.安装本文是在centOS7 64环境下进行安装,gitlab安装版本为CE-9.5.9,使用官网下载的rpm包进行安(官网下载链接)
注意:gitlab对硬件至少4GB内存
依赖安装1234567[root@your-server ~]# yum install -y curl policycoreutils-python openssh-server[root@your-server ~]# systemctl enable sshd[root@your-server ~]# systemctl start sshd[root@your-server ~]# firewall-cmd --permanent --add-service=http[root@your-server ~]# systemctl reload firewalld##修改/etc/sysconfig/selinux 永久生效setenforce 0
gitlab安装 ...
2019再见2020你好
在罗同学的推荐下,看了《拍出绝世光线:摄影师的完美用光技巧解密》一书,看书的过程中觉得自己打通了任督二脉,可是实践后。。。然后千辛万苦挑出来了上面两张照片,当然也要感谢罗同学的友情配合,还有对于我这令人发指的人像水平的包容,以及孜孜不倦的鼓励。虽然依然没什么进步,但是还是要在这立个Flag——2020至少能拍出能看的人像吧。
都说晴西湖不如雨西湖,雨西湖不如雾西湖。西湖改变了之前我对阴天雨天的态度,之前一到阴雨天只想待在家中,享受被窝和睡眠,而看到了烟雨中的西湖却是另一番风味。当然能领略这不一样的西湖还有一个很大的原因,杭州的雨真的是多。稍显夸张的说杭州一年下雨的天数,感觉可以比得上兰州十年的下雨的天数了。
五一罗同学和我密谋了我们的honeymoon,当然也是罗同学带着我第一次走出了国门,当时的我那叫一个紧张,当然也有那么一点小兴奋。我们的第一次共同出国旅行,选择了相对难度不大的日本。当然日本的铁路交通还是给我们好好地上了一课,出门做错地铁做过站成了日常。印象最深的是我们在镰仓的时候,在镰仓社区中找到了一家很幽静的餐厅吃饭,老板是一对中年夫妻,他们不会中文,和我们 ...
第五届天池中间件比赛初赛总结
起源了解到天池程序设计大赛还是去年在网上逛博客的时候,看到有人分享了自己的参赛经历,和在参赛过程中一步步完善思路提高成绩的过程(附上链接)。就暗暗记下了这个比赛想要有朝一日自己也亲自操刀尝试一下。
赛题——自适应负载均衡的设计实现题目的内容是基于Dubbo的负载均衡算法实现,如上图所示,测评时提供三个配置和性能不同的provider节点。同时可以通过官方提供的辅助接口进行想过性能数据的采集。
可以通过provider的Callback获取provider的基本信息,包括最大线程数,内存使用信息等;提供了comsumer和provider端的Fliter可以进行请求情况的采集;provider端还提供了限流器TestRequestLimiter 来进行限流操作。
算法设计本次和队友各设计实现了一种负载均衡算法,答题思路都是通过固定时间窗口进行统计,根据统计值进行权重计算,来更新下一轮次的权重,同时根据权重选择节点采用了平滑加权轮训算法,来保证请求分配按照权重比例进行分配。算法一采用统计成功次数占比的方式来计算下个周期的权重,算法二采用统计平均rt的方式,在计算下一周期的各个节点的分配权 ...
人人网好友关系爬取
前言一开始准备爬取人人网的数据,是因为想把自己的人人数据做一个备份,结果后来就跑偏了,成了爬取好友关系网。(p.s.再一次成功跑偏)。作为拖延症重度患者,本来这个爬虫是在人人网被转卖的时候写好的,但是仅仅是把数据爬了回来,让数据安静的躺在家里的树莓派里。
准备要爬去一个网站的数据,首先是要对这个网站及这个网站中想要获取数据的数据接口进行分析。不同于上次大麦网(资讯类网站)数据的获取,这里解决需要用户的登录以及session保存的问题。人人网作为曾经风靡一时的社交类网站,对于登录认证还是做了一些加固的,不像有些网站明文密码传输。而是对于密码信息进行了加密处理。正好前一段时间尝试爬取一些漫画类网站的时候,有看到使用selenium+phantomjs模拟浏览行为的方式,获取动态加载的漫画图片。也是出于偷懒的心思,就决定试试用selenium+phantomjs来绕过人人网的登录。
尝试决定了使用seleium+phantomjs来作为这次爬虫使用的技术框架,就开始着手准备环境的搭建,总的来说环境搭建比较简单。
1.seleium安装
pip install seleium
2.ph ...
18年摄影记录
聚贤亭——西湖十八景之一。刚来杭州那会,经常会在面试完之后的时间来到西湖边坐坐,作为一个刚来杭州的人来说,一切都是新鲜的。虽然当时经常在这里小憩,但是并不知道这个被西湖水环绕的的亭子的名字。第一张照片是17年夏天和朋友路过这里的时候拍摄的,也是那时候才知道了这个亭子叫做聚贤亭。当时就有了一个想法想要记录这里的四季变化和昼夜的不同。聚贤亭—初雪是今年年初正巧赶上了杭州大雪,本来想去看断桥残雪,结果出发途中看到有人发“断桥残(人)雪(满)”的朋友圈后,就直接到了这里,拍下了雪中的聚贤亭。19年争取把当初的想法补齐。
姑且叫他西湖长廊吧,不知道这里具体叫什么,拍摄于18年的三月底,那会刚好换工作就给自己放了几天假。三月底四月初的杭州是一年中杭州最美的时间之一。没记错的话中午从医院出来(那段时间在做腰颈的调理)。一路散步到了太子湾公园,还碰到了一些小学的春游活动。漫无目的的绕着西湖边散步,拍下了这张照片。
还是在换工作的间隙,和罗同学一次去了厦门,然后就有了下面四张照片。不过这里还是要小小的吐槽下自己,整个18年也只和罗同学一起出去过这一次。宅的属性在今年愈发地增长了。直到罗同学说 ...
左耳朵耗子程序员练级攻略(2018)资料整理
目前整理到软件设计文章,高手篇暂未整理
获取详细内容,可扫码购买专栏
文章1.Teach Yourself Programming in Ten Years (中英对照版)2.程序员的谎谬之言还是至理名言?3.The Key To Accelerating Your Coding Skills4.How To Ask Questions The Smart Way(中文版)5.97 Things Every Programmer Should Know
6.What are some of the most basic things every programmer should know(梯子?)7.The XY Problem(作者中文)
8.Code Review Best Practices(梯子?)9.How Google Does Code Review10.LinkedIn’s Tips for Highly Effective Code Review
11.JUnit 5 User Guide(中文版)12.You Still Don’t Know How to ...
腾讯云搭建hexo博客采坑记录
git环境搭建linux下的git环境搭建可以参考:传送门
ssh免密登录注意事项1.修改sshd读取免密公钥路径如果使用git在的.ssh目录,需要在root用户下对shhd_config进行修改,
vim /etc/ssh/sshd_config
在文件内找到AuthorizedKeysFile配置,配置为自己配置的authorized_keys文件路径
2. .ssh路径的权限问题需要对.ssh路径权限设置为700,authorized_keys设置为600
chmod 700 .sshchmod 600 authorized_keys
git初始化以及提交部署问题1. 初始化空仓库远程提交失败问题在仓库路径下使用命令,命令行执行
git config receive.denyCurrentBranch ignore
2.提交到仓库后自动部署在仓库.git目录下的hooks目录下创建post-recieve文件,来设定提交后部署操作,脚本可参考下面的脚本内容’
123#!/bin/shBASE_HOME=<发布路径>git ...
Tomcat源码学习(三)——启动流程之start
上一篇对于load过程进行学习,从Bootstrap的入口类可以看到启动过程主要分为三个流程——init,load和start。之前已经学习了init和load的源码,今天就来一探tomcat启动中最后一个流程start
之前我们看到bootstarp的start方法实际是通过反射调用了Catalina的start方法,接下来就看一下start方法的内容
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849/** * Start a new server instance. */ public void start() { if (getServer() == null) { load(); } if (getServer() == null) { log.fatal("Cannot start server. S ...
Tomcat源码学习(二)——启动流程之load初探
上次对于Bootstrap类进行了学习,并且引出了Tomcat启动过程中一直有调用的Catalina类,今天就对Catalina类进行学习和分析。
根据Bootstrap类的main方法的调用顺序如下图所示:
Bootstrap的实例在执行load方法实际调用的是Catalina的load方法。查看Catalina的源码可以发现有两个load方法。
12public void load(String args[]); //对参数进行解析后在调用load()方法public void load();
load的具体实现是在无参的load方法中,下面来看一下load方法的实现
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410 ...
Tomcat源码学习(一)——Bootstarp入口类
Tomcat作为平时工作中出镜率最高的web容器,今天我们就来对其源码一探究竟。通过github获取了tomcat的最新代码,获取地址如下
https://github.com/apache/tomcat
这里使用idea的git直接从github上拉去了最新源码,同时方便获取最新修改。
获得源码后,首先来探索一下Tomcat的启动过程,那就要来看看他的启动入口类org.apache.catalina.startup.BootStrap。找到了入口类,从main方法开始入手,代码如下:
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465public static void main(String args[]) { // 同步初始化Bootstrap对象,不太理解这里为什么要加同步锁 synchronized (daemonLock) { ...
