随笔:《向死而生》---我修的死亡学分
这一篇Blog其实早就应该写了,但是奈何开学前后这段时间各种乱七八糟的事情不断,也察觉到自己最近有些浮躁,很难安静下来写点东西,做点自己喜欢的事情,所以导致我好久没有Update了。今天趁着八月节回家休息,趁着大家都睡觉了,趁着蛐蛐还在叫,趁着月还明,我来讲讲最近发生的事情。
这一篇Blog其实早就应该写了,但是奈何开学前后这段时间各种乱七八糟的事情不断,也察觉到自己最近有些浮躁,很难安静下来写点东西,做点自己喜欢的事情,所以导致我好久没有Update了。今天趁着八月节回家休息,趁着大家都睡觉了,趁着蛐蛐还在叫,趁着月还明,我来讲讲最近发生的事情。
使用Hexo框架搭建Blog有一段时间了,开始之初,惊讶于这种小巧、快速的Blog框架,只需要几个简单的命令就可以将Blog在本地搭建起来,还可以将Blog托管在Github上面,又省去了一笔服务器开销。后来我不满足于Github在国内的加载速度,我又通过学生特惠购置了一台阿里云的服务器,又经过了一番折腾,将我的Blog部署在了云端,这时候Hexo的优势就显现出来了,即使是只有1M的带宽,网站加载依旧十分快速。但是随着使用越来越频繁,一些问题也显现出来,无法进行多终端上传文章,我喜欢用我的iPad进行写文章,当我需要对Blog进行更新时,我就必须使用我的电脑,把我写好的文章,拷进source
目录下,然后在通过hexo g -d
命令部署上去,这个过程类似与git,只不过我的git仓库在服务器里,这就导致了我只能在一台电脑上对Blog进行部署,当然我也想过其他解决办法,但我觉得实在有些麻烦。另外,部署过程中,也出现了形形色色的bug,大概就是仓库与本地版本不一致的错误,这些bug都不是很难解决的,毕竟hexo十分快速且轻量化,大不了推倒重来。
MongoDB在Windows环境下搭建相较于Hbase在集群环境中搭建要简单不少,不需要过多配置文件,属于傻瓜式操作,在安装过程中所遇到的一些问题,我会记录在这里。
适逢非关系数据库老师布置了课后作业,要我们搭建一个Hbase和MongoDB数据库,而我又得知Hbase可以通过集群搭建提高性能,所以我打算在自己的桌面环境下尝试一下,过程中遇到的一些问题,我会记录在这里。
Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。
Kubernetes一个核心的特点就是能够自主的管理容器来保证云平台中的容器按照用户的期望状态运行着(比如用户想让apache一直运行,用户不需要关心怎么去做,Kubernetes会自动去监控,然后去重启,新建,总之,让apache一直提供服务),管理员可以加载一个微型服务,让规划器来找到合适的位置,同时,Kubernetes也系统提升工具以及人性化方面,让用户能够方便的部署自己的应用(就像canary deployments)。
随着Spring Cloud项目的越来越繁琐,配置文件越来越多,之前的本地存储方式就显得有些不够用了,一方面,本地存储的方式不够灵活,另一方面,如果需要更改配置,会十分繁琐并且需要重启服务,这对于一个系统来说十分不友好。
spring-cloud为基础的微服务架构,所有的微服务都需要注册到注册中心,如果这个注册中心阻塞或者宕机,那么整个系统都将无法继续正常提供服务,所以,这里就需要对注册中心进行集群部署,换言之,实现高可用。
实现的高可用的思想是:通过集群部署Eureka,并使Eureka之间相互注册,这样,当其中一台Eureka宕机不可用时,此时仍有一台服务注册可用。
在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在 Spring Cloud 中,有分布式配置中心组件 Spring Cloud Config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程 Git 仓库中。在 Spring Cloud Config 组件中,分两个角色,一是 Config Server,二是 Config Client。