月&盾

生活的精彩要去发现,而不是等待出现

最新文章

beego注解路由404

beego注解路由匹配不到,返回404页面 router.go使用了两种方式注册路由: ns := beego.NewNamespace("/admin", beego.NSRouter("/", &controllers.UserController{}, "get:Welcome"), beego.NSInclude( &controllers.UserController{}, ), controller中的路由注解设置: // @router /admin/user/get-all-user [get] func (c *UserGroupController) GetA

阅读全文
  • 分类:【Golang
  • 浏览(20)
  • 评论(0
  • 发表时间:2018-4-15 21:21:36

go并发获取数据

go语言可以很轻松的实现并发获取数据,就算是新手也可以按部就班的套用现成的并发模式来实现并发。以下是一个简单的测试程序,其中有串行,并行。 package main import ( "sync" "time" "fmt" ) func main() { syncFunc() fmt.Println(">>>>>>>>>>>>>>>") asyncFunc() fmt.Println(">>>>>>>>>>>>>>>") asyncChanFunc() } // 串行执行 func syncFunc() { var n,m,x int start := time.Now(

阅读全文
  • 分类:【Golang
  • 浏览(32)
  • 评论(0
  • 发表时间:2018-4-09 19:08:42

go测试函数的编写及运行

go test命令是一个按照一定的约定和组织的测试代码的驱动程序。在包目录内,所有以_test.go为后缀名的源文件并不是go build构建包的一部分,它们是go test测试的一部分。 在\*_test.go文件中,有三种类型的函数:测试函数、基准测试函数、示例函数。一个测试函数是以Test为函数名前缀的函数,用于测试程序的一些逻辑行为是否正确; go test命令会调用这些测试函数并报告测试结果是PASS或FAIL。基准测试函数是以Benchmark为函数名前缀的函数,它们用于衡量一些函数的性能;go test命令会多次运行基准函数以计算一个平均的执行时间。示例函数是以Example为函

阅读全文
  • 分类:【Golang
  • 浏览(30)
  • 评论(0
  • 发表时间:2018-4-05 10:21:56

Golang- import 导入包的语法

一、 包的导入语法 在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下: import( "fmt" ) 然后在代码里面可以通过如下的方式调用 fmt.Println("hello world") 上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块,当然Go的import还支持如下两种方式来加载自己写的模块: 相对路径 import "./model" //当前文件同一目录的model目录,但是不建议这种方式import 绝对路径 import "short

阅读全文
  • 分类:【Golang
  • 浏览(115)
  • 评论(0
  • 发表时间:2018-3-19 11:27:57

github提交不记录Contributions

github上提交了很多commit但是没有Contributions绿色方块,原因是提交的email和github不匹配,使用git log查看记录中使用的邮箱是否是github的邮箱,如果不是也不需要做什么修改,只需要在github上添加对应的邮箱地址即可。 右上角头像-settings-emails-Add email address 验证邮箱后就会立马重新统计

阅读全文
  • 分类:【疑难杂症
  • 浏览(101)
  • 评论(0
  • 发表时间:2018-3-19 10:59:32

pm2设置NODE_ENV环境变量

nodejs中经常使用到环境变量,最常见的如:process.env.NODE_ENV,可以配置环境变量,可以临时设置 *nix:export NODE_ENV=development&& node app.js win:set NODE_ENV=development&& node app.js 一般是作临时变量在系统启动时设置,不影响其他系统,也可同时运行开发环境和生产环境,只需要根据process.env.NODE_ENV来运行不同逻辑即可,而设置环境变量在pm2中可以轻松实现 pm2 start pm2.json --env production -

阅读全文
  • 分类:【Nodejs
  • 浏览(237)
  • 评论(0
  • 发表时间:2018-3-02 11:25:51

webpack构建vue项目警告

bundle.js:935 [Vue warn]: You are using the runtime-only build of Vue where the template compiler is not available. Either pre-compile the templates into render functions, or use the compiler-included build. (found in <Root>) 解决方案:与entry属性平级添加 resolve: { alias: { 'vue$':

阅读全文
  • 分类:【前端
  • 浏览(218)
  • 评论(0
  • 发表时间:2018-2-16 21:22:49

再聊docker和nodejs

上一篇写到了如何在docker中运行nodejs,运行方式是在docker中安装了pm2来保证node服务宕机重启,这种方式更像是把docker当做虚拟机来使用。其实,既然使用了docker的话就可以不使用pm2来管理进程,因为docker自身可以充当守护进程,在node进程退出时进行重启。只要在启动docker容器时加上--restart=always参数即可。例如:docker run -d --restart=always -p 3000:3000 mynode:1 没有pm2如何开启多进程 使用pm2可以开启多node进程,并且自带负载均衡,但是有个限制,pm2可以开启的进程数是CPU

阅读全文
  • 分类:【docker
  • 浏览(239)
  • 评论(0
  • 发表时间:2018-1-26 12:35:58

pm2日志记录和日志分割

pm2介绍 pm2是nodejs进程管理工具,现在基本是node生产服务器的标准选择,可以帮助我们实现node多进程服务,开启的多个实例自动实现负载均衡。 最重要的是保证node单进程不会因为错误退出,作为守护进程保证nodejs服务不宕机。 总体来说就是有性能监控、自动重启、负载均衡的作用。 pm2-logrotate介绍 pm2本身是可以输出日志文件的,默认的文件路径: error log path │ /home/username/.pm2/logs/app-error-0.log out log path │ /home/username/.pm2/logs/app-o

阅读全文
  • 分类:【Nodejs
  • 浏览(612)
  • 评论(0
  • 发表时间:2018-1-25 17:49:36

最新版火狐Firefox Quantum 57没有pocket按钮

从火狐量子浏览器开始,pocket按钮集成到了地址栏右侧, 如果你找不到,那么有可能是在浏览器配置中关闭了,开启方式: 地址栏中输入about:config,点击“我了解风险”继续,搜索“pocket.enabled”,如果是false双击修改为true就会出现。 其他情况可参考:https://help.getpocket.com/article/942-where-is-the-pocket-button-in-firefox

阅读全文
  • 分类:【工具使用
  • 浏览(285)
  • 评论(0
  • 发表时间:2018-1-19 10:40:54