小编Kev*_*vin的帖子

如何使用Linux上的Ruby 2.0改善独角兽进程之间的内存共享

Ruby 2.0引入了一个写时复制友好的垃圾收集器.我的进程似乎没有让内存共享超过几分钟 - 它似乎很快从shared_dirty转移到private_dirty.

其他一些人已经成功实现这一目标:

该程序可用于检查Linux上的内存统计信息:https://gist.github.com/kenn/5105061

我的独角兽配置:https://gist.github.com/inspire22/f82c77c0a465f1945305

出于某种原因,我的独角兽应用程序(也是preload_app = true)的共享内存要少得多.Ruby 2.0-p195,rails 3.2,linux 2.6.18(centos)

[root@thorn script]# ruby memstats.rb 4946
Process:             4946
Command Line:        unicorn_rails worker[4] -c /u/apps/newap/current/lib/unicorn.rb -E production -D
Memory Summary:
  private_clean                   0 kB
  private_dirty              56,324 kB
  pss                        60,256 kB
  rss                        83,628 kB
  shared_clean                4,204 kB
  shared_dirty               23,100 kB
  size                      108,156 kB
  swap                           68 kB 
Run Code Online (Sandbox Code Playgroud)

如果我完全关闭主进程(不只是一个HUP)然后重新启动它并在任何请求排队之前立即检查一个worker,我得到一个更好的故事:

[root@thorn script]# ruby memstats.rb 5743
Process:             5743
Command Line:        unicorn_rails worker[4] -c /u/apps/newap/current/lib/unicorn.rb -E production -D …
Run Code Online (Sandbox Code Playgroud)

linux memory ruby-on-rails unicorn ruby-2.0

39
推荐指数
1
解决办法
2547
查看次数

如何在nginx"if"正则表达式中使用变量

如果在$ request_uri中找到用户的名字(在cookie中),我有一个我需要绕过的缓存系统.我试图做这样的事情,但不能让变量插入正则表达式.有什么建议吗?

我可以从cookie中设置$ me变量; 我只是不能让它插入正则表达式.

set $chk == "need"; 
set $me "kevin"; 
if ($uri ~ $me) { set $chk ""; } 
if ($chk == "need") { rewrite ^ /testing }
Run Code Online (Sandbox Code Playgroud)

我总是尝试这样的事情:

if ($uri ~ "by-{$me}") { set $chk ""; }
Run Code Online (Sandbox Code Playgroud)

谢谢!-Kevin

regex nginx

24
推荐指数
1
解决办法
5万
查看次数

myslqimport --use-threads

我有一个大型数据库,我正在复制到从属服务器.尝试通过常规mysqldump导入它(大约15GB)花了2天时间失败了.所以我正在尝试mysqldump --tab技巧.

我也想使用--use-threads导入 - 但它似乎不是一次做多个表.有什么方法可以判断它是否正常工作?

mysqldump --single-transaction --quick --hex-blob --master-data=1 --tab=/tmp/backup/ apm
Run Code Online (Sandbox Code Playgroud)

在奴隶:

cat *.sql | mysql apm
mysqlimport --lock-tables --use-threads=4 apm /tmp/backup/*.txt
Run Code Online (Sandbox Code Playgroud)

另外:任何想法如何禁用binlog而不编辑conf文件并重新启动服务器?看起来有点愚蠢和缓慢,mysql也将所有数据再次复制到binlog中.

mysql mysqldump

7
推荐指数
1
解决办法
1万
查看次数

谷歌云存储Aws迁移,如何获取访问/密钥?

我正在尝试按照迁移指南进行操作:https://developers.google.com/storage/docs/migrating

In your existing tools or libraries, make the following changes:
Change the request endpoint to use the Google Cloud Storage request endpoint.
Replace the Amazon Web Services (AWS) access and secret key with the corresponding Google Cloud    Storage access key and secret key (collectively called your Google developer key).
Run Code Online (Sandbox Code Playgroud)

似乎有两个地方 - "谷歌控制台" https://console.developers.google.com/和"谷歌apis控制台" https://code.google.com/apis/console/b/0

他们似乎都没有做任何称为"谷歌开发者密钥"或访问/密钥的东西.救命!:)

amazon-s3 google-cloud-storage

3
推荐指数
1
解决办法
1395
查看次数