@oslivan-github @xmonkeycn @ericguo @kowalskidark @zfben @lifeixiong
因为台风的原因,本周二活动延期。
我把你的主题加进去了。
给邻居点个赞。
hugo 也不错。
真是愁啊,本来今年想学学前端,结果前端又出了幺蛾子。
(就在我发这条评论时,又有个前端工具诞生了)
过去为了优化前端的加载速度,大家会把把很多小 javascript 打包为一个大文件。
HTTP/2 支持多路复用,这让过去的最佳实践变的没有意义。这是大家去掉 webpack 的原因之一吗?
如果还没用 docker 的话,可以用这个 gem 部署。
https://github.com/capistrano/capistrano
如果 Docker 化了,部署之前需要打包 image,push 到 registry,略微麻烦一点。
炮哥去 PingCAP 了?
👏
非常感谢今年的组织者,我能把门票吃回本了。
看的我好饿啊。
刚才看了一下,Terraform Cloud 免费版本有 5 个名额的限制。
原来 Terraform Cloud 已经免费了呀,那真是太好了,我现在用的 S3 保存 state,DynamoDB 做 exclusive lock
其实文件的组织方式,只是方便人类组织代码。对于 terraform 来讲,它会把所有的 .tf
文件合并为一个。
财务自由(被动收入超过工资收入)是这个社会灌输给普通人的谎言。
创业挺好的,我也在一个创业公司,每天做的东西也很有趣。但是把财富自由的信念寄托在创业上,是它不能承受之重。
赌博的人多了,难免有个别人运气好,连续都赢。但大部分人都是分母,钱来得快,跳楼更快。
等流动性恢复正常时,到时候再看看谁在裸泳吧。
大部分人都是平凡的打工仔,对于普通人而言,控制自己的欲望最切实可行。
所以我觉得这个老程序员说的才是实话:合理储蓄,不要过度消费。在自己的能力圈内持续的投资,比如买套房,或买点低费率的 ETF。
如果你用的是 Aws 全家桶的话,AWS certificate manager 可以自动续签证书,自动更新 cdn 和 loadbalancer 挂载的证书,而且免费。
一开始我想的方案:自己用 jenkins master 起多个 node 并行跑,用 amazon spot instance 做 jenkins 跑测试的 node。
但是折腾起来太费劲了,估计我得折腾一个月,还需要牵扯到日后的运维工作,不如花钱用 circleci 简单。程序员一个月的工资够 CircleCI 跑 2 年了。
circleci 支持并行跑测试,只要付费就行了。
大概逻辑:
TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=name)"
这是我们的配置,比较陈旧了,但是还能正常工作,下一步是升级到 version 3。
# Ruby CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-ruby/ for more details
#
version: 2
jobs:
build:
parallelism: 24
working_directory: ~/workstream
docker:
# specify the version you desire here
- image: circleci/ruby:2.6.6
environment:
BUNDLE_JOBS: 3
BUNDLE_RETRY: 3
BUNDLE_PATH: vendor/bundle
PGHOST: 127.0.0.1
PGUSER: root
RAILS_ENV: test
- image: circleci/postgres:9.6
environment:
POSTGRES_USER: root
POSTGRES_DB: workstream_test
POSTGRES_PASSWORD: test
- image: docker.elastic.co/elasticsearch/elasticsearch:6.3.2
- image: redis
steps:
- checkout
- run: cp config/database.yml.example config/database.yml
# - run: sudo chmod 777 /root/repo/vendor/bundle
# Download and cache dependencies
- restore_cache:
key: workstream-{{ checksum "Gemfile.lock" }}
- run:
name: install dependencies
command: |
bundle install --jobs=4 --retry=3 --path vendor/bundle
- save_cache:
paths:
- ./vendor/bundle
key: workstream-{{ checksum "Gemfile.lock" }}
# Database setup
# - run: bundle exec rake db:create
- run: bundle exec rake db:schema:load
# run tests!
- run:
name: run tests
command: |
mkdir /tmp/test-results
TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=name)"
echo "run the following line to reproduce the failed test case"
echo "========================================"
echo "bundle exec rspec --seed 100 $TEST_FILES"
echo "========================================"
bundle exec rspec --profile 10 \
--format RspecJunitFormatter \
--out /tmp/test-results/rspec.xml \
--format progress \
--seed 100 \
$TEST_FILES
# collect reports
- store_test_results:
path: /tmp/test-results
- store_artifacts:
path: /tmp/test-results
destination: test-results
我们用的 circleci,一次起 25 个 container 跑测试。本来 45 分钟的测试,4 分钟跑完。
Event Sourcing 主要的思想是记录事件,没有修改和删除。事件 replay 得到结果,有点函数型的数据不变的意思。
我的理解 Event Sourcing 是个状态机。下游通过持续不断的 apply event,获得和上游一样的状态。
答案是,人多。
上海一个市的人口,差不多等于整个加拿大人口总量。
一楼说的都是真事。
那个评论同事漂亮被警告的,据说原因是“不能评价别人的长相”
你对 cloudformation 怎么看?
如果让你选择,你会用 terraform,还是 cloudformation?
人的精力有限,
选择一:做一个全面手,对全局有一个整体的认识,然后重点精通一两个领域。
选择二:做技术专家,一个领域钻到底。
两个都是不错的选择。