Go 语言中 new 和 make 都是内置函数,用于内存的分配,本文主要简述两者使用上的异同与特性。
最近在做一个红包小程序的后台,总结一下发红包和抢红包的大致实现过程。
在 Go 语言中,我们可以把函数作为一种变量,用 type 去定义它,那么这个函数类型就可以作为值传递,甚至可以实现方法,这一特性是在太灵活了,有时候我们甚至可以利用这一特性进行类型转换。作为值传递的条件是类型具有相同的参数以及相同的返回值。
我已经被 Go 语言的大道至简的设计深深地吸引了,它自带的命令诸如 go run、go build、go install 等,就可以编译运行 Go 应用了,这在 Java 中,我们还需要依赖 maven 的编译工具,Go 的这些命令就相当于一个 maven了,甚至比 maven 简单多了,而且还是原生支持,这篇文章主要是说一下 Go 的工作目录与编译的规则,初步体验一下 Go 的大道至简的魅力。
Eureka作为微服务的注册发现中心,在运作过程中保持稳定性尤为重要,如果一个项目只有一个 Eureka server,万一这个 Eureka server 宕机了,后果不堪设想,因此,我们需要搭建一个高可用的 Eureka server 集群;同样地为了安全考虑,还需要给 Eureka server 添加用户密码验证。
制作镜像一般有三种方法,第一种是 run 一个基础容器,在里面下载好我们需要的东西,然后通过 docker commit 命令生成一个新的镜像,第二种方法是基于本地模版导入,第三种就是这篇文章说的基于 Dockerfile 创建。
很早之前就听说过docker了,简直就是开发人员的部署神器啊,但一直没有去了解,没有利用它做过一点实际的内容,这不前段时间有个路人甲的云服务器部署的项目启动后访问不了吗?让我去看看,我发现在本地能访问,于是我在想,如果能把开发环境和线上环境统一就好了,开发环境测好直接打包到线上,一键部署,然后我就想到了我一直想要去学习的docker了,docker的一些官方简介这里就不一一展开说了,直接开撸!
昨晚突然萌生出将自己的博客加个评论模块,我突然想到我这个博客的源码有一个评论模块,在修改源码的时候被我注释了,那个评论模块叫 disqus ,但是需要翻墙才能用,而且加载太慢了,所以继续寻找第三方评论插件,于是就搜到了Gitalk。在搭建过程中发现很多细节没注意到,导致花了很多时间才弄好。
现在工作上有大部分时间都在终端上,需要经常在终端部署项目,查看日志,找 bug,所以写一篇 ssh 连接远程终端的文章,以此记录一下整个配置过程,因为自己也是一个健忘的人,在此过程中也涉及了一些 linux 权限的知识点。
最近项目跟广州日报有个活动,需要在项目中增加一个根据学生的打卡获得的学分而生成的一个排行榜,考虑到访问量可能很大,且排行榜每天只更新一次,若每次都查看排行榜都查一次数据库,会导致服务器消耗很大,解决方案就是把每天的排行榜数据缓存到Redis的有序集合中,它会根据学分自动排序,满足了排行榜的需求。