一个运维老同志
最近用上ThreadPoolExecutor, 用来代替celery的方式。 主要是用在celery上的时间太少, 没有吃透, 还有,我们的应用没有复杂到那地步, 多开几个服务器,也可以实现线程池的扩展。
还要注意,如果开发在WINDOWS上, 而正式运行在LINUX上, 还要分个叉判断一下的。
上手很简单, 作个记录, 怕以后忘了。 官网文档也简单的。
我只能说, 以下这个dockerfile总结了很久, 当然,目前算是个半成品, 但对我极具参考价值!!! 注释里才是技术亮点。
统一tomcat的程序包路径,日志路径,自定义变量,JAVA启动项的配置文件示例
在安装locust压测工具时遇到大量这样的东东。因为windows下,有的用到了c扩展。要么就是前面介绍的方法,自己编译。要么下载编译好c的whl文件。
Unable to find vcvarsall.bat问题的解决
如果可以隔离不同流程的脚本, 在不同的阶段实现, 那么,所有类型的CI, 是否就可以用同一个JOB去实现? 比如: 编译节点,GIT地址,编译命令,HARBOR地址等。 (关于为什么要用赤裸裸的LOGIN命令, 上一个BLOG里有说明, 因为YET ANOTHER DOCKER插件, 生成的是老式的.
原来 Registry 1.0 - Docker pre 1.6:认证文件为.dockercfg Registry 2.0 - Docker 1.6 and up:认证文件为.docker/config.json
看了好几个从零开始建区块链的文章, 只有以下这几个URL实在, 于是,花了一晚上, 妥妥的自已手打一次, 感觉棒棒哒~~:)
今天想启用这个功能, 这样,docker里的root用户,就不用是宿主机的root用户, 安全性可以提高一个层次。 于是找了文档,对比了配置,default用了,自定义用了, 结果呢? 傻眼了~~~~全都失败。
在以下文档中,才理清楚了DOCKER正确的更改启动配置的方式。 动不动就是那个/etc/default/docker目录的方式,OUT了。。
公司以前作了自定义的配置文件路径, 在将系统纳入K8S之后,也需要作配置文件的自定义路径。 在上面的URL里找到了玄机, 原来在bin下面的setenv.sh文件,是自定义classpath路径和其它配置的推荐作法。
这方面,php已很成熟了, 综合下面这个链接,基本上调试一下就可以搞定了。
网上找了很多文档,总是验证失败。 官方的都不行, 最好,挖到了以下的代码,才验证通过。
先来简单的, 由浅入深嘛。
我感觉它和java或go里的接口,差不多一个意思吧。
这个今天算是踩到坑了。 将普通用户和管理员用户分别放在不同的表里。 那么,前台和后台登陆时, 认证的东东就要分开。 开始还顺利, 等认证完成之后, 却无法获取登陆的用户。
敲敲打打, 每天差不多一个小时来学这个, 相信到时候再用XCODE,感觉会熟悉很多。。
Laravel 5.1和5.6用指定字段登陆的用法区别
用户登陆注册, 不管前台后台, 如果掌握了手机短信和图形验证码, 那安全性会好很多, PHP上常见有两个captcha图形验证方式, gregwar/captcha和mews/captcha 参考下面的连接,用mews/captcha,感觉很方便。
进入机械的学习模式, 就是把代友敲完。 以期能加深些记忆。
条件所限,只能在WINDOWS上学习SWIFT的基本语法。 还有,有swift for windows 1.9帮忙, 看书没那么燥。。。。
常见的实现, 要熟悉了解, 至于闭包逃逸, 自动闭包这些内容, 可以以后用到时再学吧。
这里不涉及函数作为参数和返回值的情况。 进军iOS开发了哈。 计划六一前,搞一个套H5的App出来, 靠谱么? 其实,看过了java,php,javascript,python,go之后, 再在看swift,感觉很亲切啊, 都是老熟人。
为了偷懒,不得不写点高级的东东。 Laravel中的路由,是一个要搞定的技术点。 比如,后台管理登陆, 所有页画都要经过adminLoginAuth认证的中间件, 然后,每一组功能,都会生成一个前缀, 然后,还要为每个url进行命名管理。
SQL写得少, 写一次记一次。:)
以前的是5.1版本写的。 现在改成5.6版本。 其中遇到的问题,我会在这个laravel专题中一一指出。
尽管现在公司maven,gradle占主流。 但ant还是有一些的。 对于不是java的项目打包的问题, ant就更有通用性了。
找了一个晚了, 教程很多, 但手把手,一步一步教的不多。 对于我这种新手,少一步都不会成功啊。 几十个文章看过之后,以下URL给了我最初的信心,
这个要学习了解下。 才更能合理的迁移一些东东。
从这本书的学习过程中, 细细的理清了很多观念, 值到正式版或是中文版再看。 截了很多图,用黄色标明吸引我的知识点。
本文档简述了Kubernetes主节点灾备恢复的相关步骤,供在发生k8s master崩溃时操作。 就算是在k8s里部署了etcd群集, 主节点控制组件的高可用节点,灾备恢复也是必须要实现的操作,才能形成完备的企业级服务方案。
一直有这个冲动, 想知道kubernetes往etcd里放了哪些数据,是如何组织的。 能看到,才有把握知道它的实现和细节。 找了很多文档,终于找到靠谱的。
向内求深, 向外求广。
样例包含了If,choose,where,set,foreach,bind. 基本覆盖了常见的动态SQL用法。
学习mybatis时,不用和spring集成, 不用注解,可以了解得多一些, 在这之上,使用注解和spring集成, 乃至到spring boot, 其间的传递路径才不会迷路。
这次要连数据库建表及插入的数据都列表, 推导和理解起来,就通畅多了。
一对一最典型的数据库关系就是用户和身份证了。 书中就是以这个例子来作为实现的。
到这段时, 想起来了以前学底层一些的servlet & jsp技术时, 过滤器和拦截器也有相关实现, 但比起来,spring的实现,可用性高很多。
文件上传使用了apache commons fileupload 和commons IO, 在使用之前,相关jar包需要导入项目工程目录。
相对于Spring本身的validation框架, JSR 303校验显得更简单,易操作。
信息的转换,格式化,验证对于前端数据来说, 都是很有必要的。 这里实现一下格式化数据。
这种技能就属于套路化操作, 跟着走一次就OK了。
通过示例学习, 然后举一返三, 是最快的吸收知识的方式。
在经过数据库持久化,网络编程,多线程了解之后, 可以进入一些开发技术了。 当然,数据结构,算法,开发模式,第三方库的了解也是必须的。 疯狂软件出的《Spring Mybatis企业应用实战》, 作为操作解说型的教程, 还是不错的!
这个pipe和linux系统上用来连接两个进程的pipe不是同一概念, 主要是在JVM内部,用来实现不同线程之间的数据同步。 这倒让我想起了go语言的channel技术。
开始有点跟不上实际思路了, 今天暂停吧。
学到这一步,就可以和操作系统的一些IO调用结合起来了。 感觉到设计系统和语言的人是多么的牛X。 能考虑到的细节是多么的复杂!
有一本小书,叫<java nio>, 2002年的中文版PDF。 可以看看,尽管是一本历史感很强的书, 讲解还是很细致的。 由此进深入nio2的话, 那java io的秘密, 就全部清晰了。