是的,AWS 就是这么黑,如果你一个月只付 10 个小时的钱,他竟然只让你用 10 个小时。
要省钱为什么要用 AWS?如果你月支出预算少于 500 美刀那我觉得你根本就不应该去考虑 AWS/GCP/Azure。
Unobtrusive JavaScript 就是 HTML 里不内嵌 JavaScript。同理 CSS 也可以不内嵌,而是写在 CSS 文件里。
And if you’d shown people Ruby in 1975 and described it as a dialect of Lisp with syntax, no one would have argued with you.
《Hackers and Painters: Big Ideas from the Computer Age》 Paul Graham
如果大家只是夸夸你,那可能你能力并不强……
操作系统本来就会自动缓存文件。你在读取的时候,文件的内容会自动存在内存里,不需要扩展也不需要任何额外的措施。
你可以直接用 Ruby 代码顺序读取一次整个文件然后关掉。操作系统一般会在后台把文件留在内存里。
ermmm 我总不能说我是搜索搜出来的吧……
rvm 也是可以的,也算是一种软件包管理软件。最怕的是裸复制文件的那种。
我想说的是,就算要编译,也应该用包管理支持的方式进行编译。比如我维护 Debian 上的 nginx 的时候,是用 dpkg 打包成 deb,虽然过程也是要编译,但最终是由包管理来解决版本追踪问题。
我不想显得自己粗暴无礼,但是这帖子整个说得都是什么东西啊。
CentOS 6 根本就不支持 PHP 7,换句话说如果你要用 Redhat 官方的源,就去装 CentOS 8,如果要用 CentOS 6,就得用第三方源。
那么第三方源很麻烦吗?不。Remi 源早就有全套 PHP 7.3.12 了(之前版本的也都有),要安装只需要按照教程加上源然后 yum 就完成了。
同理,Nginx 官方源也早就有最新的稳定版 1.14.2 了。
全部装一遍,我觉得,半小时足够了吧?
Linux 上永远也不要 make install 编译安装(除非是用完就扔的)。总是使用 Linux 自带的包管理工具来安装软件。你从源代码编译,就只是得到了一个没有经过测试、没有技术支持、没有任何安全团队保护的软件。如果是为了节省时间而牺牲一些性能,那也就算了。可你这也没节省时间啊……
二维码本身有一定的鲁棒性,用高性能的扫描仪扫描然后调节二值化阈值再拿手机多扫扫吧。
把 Ruby 替换成 Lisp 会不会让人更容易理解问题在哪?
内存不足说明你内存不足。和后面的内存空间剩余充足是矛盾的。
我觉得我们 Rails 1.2 的才是凉透了……
语言的表达能力。
换句话说,同样的代码我已经不想用其他语言来写/实现了。
浮点数不精确。精确值严禁用浮点。这样的基础知识还是要有的,和 round 还是 next 没关系。
在浮点数里,200.48000000000002 与 200.48 是应该被程序员视作相等的值。
即判断两者相等的操作 is_equal = (200.48000000000002 - 200.48).abs < 1e-6
返回的是 true
。
是什么让你不去用大名鼎鼎的acme.sh的呢……
postrotate
/usr/bin/killall -HUP rsyslogd
endscript
你应该去重启 puma 而不是重启 syslog。看上去像是复制粘贴了 syslog 的 rotate 配置但是没有改重启脚本。
搞海外服务器这事,要搞好的话还挺复杂的,机房啊线路啊这些都要折腾,没有那种一站式的完美解决方案。
DO 之前还被爆出来莫名其妙把一个创业公司 (?) 的整个公司账号全封了,机器全关了的事情呢。
只是写脚本随便扒点文件的话 net/http。如果是做项目要拉 API 请求的话法拉第挺好。
Rake 重度用户路过。
pry(main)> result = Base64.encode64(hash)
#=> "gmBQdw9tdiWDFCUUshLNYdrHIRHyeTN8kPNWipUBbd8=\n"
2
很多人无脑直接装系统,这种情况下就是问题了。如果自己知道改 prefix 当然另当别论。
另外像是你说的 pg,还是要有人盯着官方的安全补丁,勤升级才好。有时候连带其他组件更新也需要重新编译。比如 nginx 可以选择静态编译 OpenSSL,那 OpenSSL 有新的安全更新的时候,就要连带 nginx 一起重新编译了。
而且就算要自己编译,我也是提倡用发行版自己的打包脚本来编译,减少每次编译之间带来的差异。我们这维护一个 nginx mod 版,就是 debian 打包脚本然后用 docker 编译成 deb 包,这样版本更新进度一目了然,而且编译过程 reproducible。
没有编程经验……这个超纲了,臣妾不知道啊……
#12 是一方面。 另一方面是软件版本管理,make install 装好以后很容易忽视安全更新。
首先第一条,不要用 make install 安装软件包……
入门的定义本来就不一样,怎么比较。
部署一个 Ruby 网站需要你拿个 VPS 来搞;部署一个 PHP 网页只需要你找个免费空间 FTP 传上去。
当时同样做一个 MVC 结构的网站:
Rails 命令行直接 Generate,PHP 你得先挑个或者做个框架……
不折腾这个词本身就有两层含义。
一是不用自己去定制,免得浪费自己宝贵的时间。
二是仿佛你得认他做爹,什么都得听他的,没你的话语权。
这也是安卓 VS 苹果中的一个关键点。对于普通人来说,拿到一台手机,听厂商的话,照着厂商给你定义的使用方式使用就行了。但是对于一小撮人来说,我的手机我做主,那就会变成「折腾」。买个能刷机的,解开 BL,刷上自己惯用的安卓发行版,按照自己的喜好定制启动器、锁屏、按钮条等等……
类似的还有什么群晖 VS DIY NAS……还有波音 VS 空客……还有自动挡 VS 手动挡等等。
具体想不想折腾,还是看人的风格习惯吧。如果你喜欢「让机器听人话」,你可能会更喜欢 Linux 环境。
变量标识符是没有 object_id 的。
对象是有 id 的。
你把新的对象赋值给变量标识符,对象的 id 当然会改变。