winsky小站

Good Good Study, Day Day Up


  • 首页

  • 归档

  • 分类

  • 标签

  • 关于

  • 搜索

Gitlab安装体验

发表于 2019-06-11 | 分类于 Git , gitlab |

由于项目开发代码托管需求,需要在阿里云上部署一套独立的Gitlab仓库,来进行项目代码管控。

GitLab是由GitLab Inc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。

本文记录了如何在阿里云上安装部署自己的Gitlab仓库。

阅读全文 »

SSH免密登录

发表于 2019-06-10 | 分类于 Linux |

Linux系统有一个钥匙环(keyring)的管理程序.钥匙环受到用户登录密码的保护.当你登录Linux系统时,会自动解开钥匙环的密码,从而可访问钥匙环.SSH的密钥和公钥也存储在钥匙环.所以初次使用SSH密钥登录远程Linux服务器时需要输入一次SSH密钥的密码.而将来使用SSH密钥登录时不再输入密码.Ubuntu的钥匙环程序是seahorse.

SSH密钥就好比是你的身份证明.远程Linux服务器用你生成的SSH公钥来加密一条消息,而只有你的SSH密钥可以解开这条消息.所以其他人如果没有你的SSH密钥,是无法解开加密消息的,从而也就无法登录你的Linux服务器.

本文主要介绍SSH免密登录的原理,以及如何配置Linux免密登录。

阅读全文 »

CentOS服务器挂载Swap分区

发表于 2019-06-10 | 分类于 Linux |

经常购买使用一些Linux的服务器,有些厂商提供的CentOS模板中并没有配置swap分区,这就使得服务器的内存有点捉襟见肘(尤其是小内存的情况下)。本文也就记录如何在CentOS系统下给服务器添加swap分区, 增大内存。

阅读全文 »

组合与聚合的区别

发表于 2019-05-12 | 分类于 UML设计 |

组合和聚合是有很大区别的,这个区别不是在形式上,而是在本质上:

比如A类中包含B类的一个引用b,当A类的一个对象消亡时,b这个引用所指向的对象也同时消亡(没有任何一个引用指向它,成了垃圾对象),这种情况叫做组合。

反之b所指向的对象还会有另外的引用指向它,这种情况叫聚合。

阅读全文 »

虚拟机线程状态 vs 操作系统线程状态

发表于 2019-04-25 | 分类于 Java , Java基础 |

线程的状态一文中我们曾经介绍了线程的状态,注意这里描述的是Java中定义的6种状态,是虚拟机层面上暴露给我们的状态,这些状态是由枚举类Thread.State中明确定义的。

也许有同学就要问了,为什么我之前还听说过线程只有只有5种状态呢?是哪里有问题吗?其实,不论是6种状态还是5种状态,这两种说法都是对的,只不过他们描述的对象不同,一个是Java虚拟机的线程状态,一个是操作系统中的线程状态。

本文主要介绍Java虚拟机线程状态和操作系统线程状态的关系。

阅读全文 »

Hexo自动部署优化——解决TTFB过长的问题

发表于 2019-01-05 | 分类于 Hexo博客 |

差不多去年这个时候,自己萌生了玩VPS和搭建自己的博客的想法,眨眼间博客也运行快一年了。博客使用过程中,中途发现自己的站点打开速度很慢,之前也零零碎碎地看过这个问题,但是一直没能解决。今天周末好不容易闲下来,终于研究出了问题所在。

博客访问慢的直接原因在于,网站的 TTFB 等待过长,关于什么是TTFB,我们文末再介绍。问题的解决方案,就是,之前VPS上自动部署的方式不对,没有依赖静态页面,而是利用了Hexo的服务器。通过直接访问Hexo提前生成好的静态页面,博客加载速度有了明显提高。

阅读全文 »

QQ音乐歌词接口

发表于 2018-09-02 | 分类于 爬虫 |

之前在公司实习的时候,做过一个QQ音乐歌词爬虫的项目,期间网上找了不少参考资料,自己也研究过QQ音乐的js解析,这里简单做个记录,以供以后参考。

阅读全文 »

锁等待超时与information_schema的三个表

发表于 2018-09-02 | 分类于 数据库 |

在高并发的环境下,我们经常会遇到并发处理的问题。在数据库的处理过程中,曾经碰到这样一个错误:

1
2
ERROR 1205 (HY000): Lock wait timeout exceeded; 
try restarting transaction

翻译过来就是锁等待超时,尝试重启事务。

那,这种是如何出现的呢?以及我们在开发中应该如何排查呢?

阅读全文 »

设计模式常见面试题

发表于 2018-08-25 | 分类于 设计模式 |
本文介绍了一些软件设计和设计模式的相关的问题,这些问题大多会出现在初学者面试情景。什么是设计模式?特定的设计模式又是什么?等等这些概念,也许你很轻易回答这些概念,但文内提供的这些问题也许能给你带来更多价值。 入门级程序员的面试题什么是设计模式?在你编码过程中使用了哪些设计模式?在软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案。 平时用的比较多有单例模式(在内存中仅实例化一个对象时使用),适配器模式(典型的就是ListView和GridView的适配器),建造者模式(AlertDialog.Builder),观察者模式可能比较隐 ...
阅读全文 »

单例模式的若干种写法

发表于 2018-08-25 | 分类于 设计模式 |

设计一个类,我们只能生成该类的一个实例。

这是一道很简单也很基础的设计模式题,对不对?但是要真的在各种条件下完美的实现Singleton模式,却是需要一点思考的。

以前我在实习的时候,每次遇到需要用到单例来写一个处理器线程的时候,使用的都是最简单的单例实现模式,由我自己在代码中人为保证代码只会被调用一次。今天正好有机会,系统地学习一下如何正确地实现单例模式

阅读全文 »
123…13
winsky

winsky

生命不息,折腾不止

124 日志
35 分类
82 标签
GitHub E-Mail
友情链接
  • winsky wiki
  • Jestom
© 2020 winsky
由 Hexo 强力驱动
|
主题 — NexT.Pisces
|
博客全站共235.3k字
人 次