Ruby China
  • 社区
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • 注册
  • 登录
msg7086
@msg7086
会员
第 15139 位会员 / 2014-09-26

[email protected]
Oracle
林肯帕克
11 篇帖子 / 895 条回帖
29 关注者
0 正在关注
3 收藏
GitHub Public Repos
  • x265-Yuuki-Asuna 177

    A fork of x265. A modded version.

  • rb1drv 13

    msg7086's Ruby SDK for Microsoft OneDrive Service

  • bs4kass 12

  • gop_muxer 7

  • x265 6

    An unofficial mirror to x265 repository, using hg-git. Since MCW switched to Git in 2020, this mi...

  • koying-bdtools 5

    forked from koying/bdtools

  • x264_tMod 4

    tMod: patched x264, dangerous

  • aac-channel-splitter 4

  • nails 3

    Create thumbnails for video clips.

  • latm-channel-splitter 2

More on GitHub
  • 概况
  • 话题
  • 回帖
  • 收藏
  • 正在关注
  • 关注者
  • PostgreSQL 与 MySQL 的性能 at 2014年10月29日

    #35 楼 @bobby_chen 还请你好好研究一下 索引 这个东西本身。

    SQL 查询如果没有合适的索引就会扫全表。 你上面的例子就是典型。 WHERE子句里第一个条件是timestamp = ?,然后GROUP BY是game_id (虽然你原句里没写GROUP不过这样原则上是病句) 那么只有在有 (timestamp) 索引的情况下才能利用到索引。 而最佳的情况是有 (timestamp, game_id)`,这样就能完全利用索引来计算。

    你的问题不是索引太多,而是索引没有跟着需求走。建议你先列出要用到的查询语句,看下每个语句要用到的列,然后再根据实际需要去建立索引。

    以下是只有timestamp索引的情况。虽然用了索引但是还是要局部扫表。

    MariaDB [test]> EXPLAIN SELECT `game_id`, count(`game_id`) FROM `basicdata` WHERE `timestamp` = '2014-10-15' GROUP BY `game_id`\G
    *************************** 1. row ***************************
               id: 1
      select_type: SIMPLE
            table: basicdata
             type: ref
    possible_keys: index_1
              key: index_1
          key_len: 8
              ref: const
             rows: 94
            Extra: Using where; Using temporary; Using filesort
    1 row in set (0.00 sec)
    
  • PostgreSQL 与 MySQL 的性能 at 2014年10月29日
    MariaDB [test]> EXPLAIN SELECT `game_id`, count(`game_id`) FROM `basicdata` WHERE `timestamp` = '2012-04-15' GROUP BY `game_id`\G
    *************************** 1. row ***************************
               id: 1
      select_type: SIMPLE
            table: basicdata
             type: ALL
    possible_keys: NULL
              key: NULL
          key_len: NULL
              ref: NULL
             rows: 3071957
            Extra: Using where; Using temporary; Using filesort
    1 row in set (0.00 sec)
    
    MariaDB [test]> CREATE INDEX `index_1` ON `basicdata` (`timestamp`, `game_id`);
    Query OK, 3071957 rows affected (26.18 sec)
    Records: 3071957  Duplicates: 0  Warnings: 0
    
    MariaDB [test]> EXPLAIN SELECT `game_id`, count(`game_id`) FROM `basicdata` WHERE `timestamp` = '2012-04-15' GROUP BY `game_id`\G
    *************************** 1. row ***************************
               id: 1
      select_type: SIMPLE
            table: basicdata         type: ref
    possible_keys: index_1
              key: index_1
          key_len: 8
              ref: const
             rows: 44
            Extra: Using where; Using index
    1 row in set (0.00 sec)
    

    特地给你建了一个环境试的。

  • PostgreSQL 与 MySQL 的性能 at 2014年10月29日

    #27 楼 @bobby_chen 不好意思我爪机看不到 timestamp 上的索引。回头用电脑看。

  • 求 Rails 小项目开发实现指引 at 2014年10月29日

    四要基于三吧。 另外 cancan 我没用过所以没法说了…

  • 求 Rails 小项目开发实现指引 at 2014年10月29日

    三,用户可以自主创建表单

    其实挺麻烦的

  • PostgreSQL 与 MySQL 的性能 at 2014年10月29日

    #22 楼 @bobby_chen 你这样不加索引真的大丈夫

  • do_you_mean - 帮助你纠正错误函数拼写调用 at 2014年10月27日

    :thumbsup: Nice gem

  • 請問有外包經驗的,這項目要求文檔到底要多具體啊? at 2014年10月24日

    所有你觉得有所谓的东西都应该写入需求文档里。

    比如说登录功能,如果你不写的话,可能会做成「用户名密码登录」或者「邮箱密码登录」或者「新浪微博登录」或者「谷歌账号登录」等等。如果你想具体要求,那就必须写明,「我需要邮箱密码登录和新浪微博登录」,这样子。

    界面也是。功能也是。凡是你觉得有所谓的东西,都要写进需求里。

    之前看日本工作外包出来的需求分析,连界面上每个按钮和输入框的位置大小都会定好,示意图画好,然后分析每一个组件的操作。

  • Happycasts: 105-vagrant 用 Vagrant 搭建开发环境 at 2014年10月24日

    #7 楼 @cooper 其实我不太明白,统一开发环境的好处是什么。 按理说,为了让软件更健壮,应该在不同的环境下分别测试才对啊?比如 Debian/Ubuntu/CentOS/Arch/Gentoo 下都能跑,而不是只有 Ubuntu 的某个版本的某个更新才对吧。

  • 在 CMD 中运行 rails console 出现 Nameerror uninitialized constant 错误 at 2014年10月20日

    你 user model 创建了吗?

    另外,请善用 Linux

  • Happycasts: 105-vagrant 用 Vagrant 搭建开发环境 at 2014年10月20日

    除了安装方便以外还有啥好处……

  • Rails 中引入 Bootstrap 的问题 at 2014年10月20日

    gem 'bootstrap-sass', '~> 3.2.0'

    至于覆盖?修改 sass 变量即可。找到 gem 里对应项目的变量,然后直接在 sass/scss 改掉。

  • 每次都要运行 rails server 吗? at 2014年10月03日
    1. 可以开 screen 啊
    2. 生产服务器请老老实实上 webserver+unicorn/thin/passenger
    3. 其实我开发的时候就已经是 nginx+unicorn 了。rails s 我还没用过呢。
  • 【已更新】ShellShock 漏洞及 OS X 紧急修复方法 at 2014年10月03日

    #36 楼 @mengbo 我一直以为 hashbang 标记是由 sh 来负责解析的。

  • 【已更新】ShellShock 漏洞及 OS X 紧急修复方法 at 2014年10月03日

    #34 楼 @mengbo 我可能说得不太对。

    调用 perl 脚本的时候难道不是用 sh 启动的么

    另外,很多发行版还没换 dash 呢

  • 【已更新】ShellShock 漏洞及 OS X 紧急修复方法 at 2014年10月03日

    #32 楼 @mengbo web server 调用 cgi 程序的时候不会走 sh 吗

  • 请教这个查询应该怎么写? at 2014年10月01日

    #4 楼 @stephen 我觉得,「2」,就是多的意思了……。

  • nginx 问题还是 rails 问题 at 2014年09月30日

    我猜是浏览器的错?

  • 请教这个查询应该怎么写? at 2014年09月30日

    Game 与 team 之间是多对多的关系吧,用关系表来做是不是更好?

  • 【已更新】ShellShock 漏洞及 OS X 紧急修复方法 at 2014年09月30日

    #27 楼 @mengbo 这个漏洞不需要用 bash 写 cgi

  • shell 编程中 rm 命令的执行问题好奇怪 at 2014年09月30日

    #7 楼 @iBachue 原来如此

  • shell 编程中 rm 命令的执行问题好奇怪 at 2014年09月29日

    因为 '.*' 会扩展成 ['.', '..', '.XXX'] 所以会把自己删掉。

    bash 和 dash 似乎都会扩展,而 zsh 又好像没有。你可以仔细研究一下……

  • 有没有针对静态文件的访问计数,比如针对图片访问的计数 at 2014年09月29日

    #20 楼 @hooopo cdn/云存储的话,请求不会hit到你web server 上,这种除了用跳转以外没法做。

    顺便,跳转的话也还是走 nginx 内置脚本最快,走 php 还是会影响性能……

  • 有没有针对静态文件的访问计数,比如针对图片访问的计数 at 2014年09月29日

    #13 楼 #16 楼 @hooopo hit 到 rails stack 就已经很慢了。

    nginx+lua+redis 你们可以试试,我测下来性能很好,200qps 下 cpu 占用动都不动……

    然后另一边程序部分每几秒钟,或者用 cron 每分钟,从 redis 抓一批数据下来统计进数据库就好了。

    或者如果统计结构很简单的话,直接让 lua 做完统计写入数据库就好了。

    顺便 at 你: #14 楼 @cisolarix

  • 有没有针对静态文件的访问计数,比如针对图片访问的计数 at 2014年09月29日

    #17 楼 @yijunlin file description 文件描述符 web server 会长期打开一个日志文件。要分段处理的话,得把不停文件移走然后重新打开日志文件句柄才行,很麻烦。

  • 求大神帮忙看看是怎么回事,拜谢 at 2014年09月26日

    3 条路

    1. 降级
    2. 阅读错误提示的第一行并自行修改配置
    3. 上网搜索解决方案,并且按照搜索结果,将 thin 升级到 1.6.0 即可。
  • 网站访问速度很慢,如何检查并定位哪里是瓶颈?[问题作废] at 2014年09月26日

    很快,真的。 如果你嫌慢,多数是因为配置太差造成的。 美国的 VPS/主机,最少也是百兆口,好点的千兆以上。突然换成 1m 的网络,慢很正常。

  • 今天被各种 Markdown 方言给坑了……感觉对 Markdown 累觉不爱 at 2014年09月26日

    #6 楼 @Rei 总有几个比较大的,比如 GFM 之类。建立一个统一开源的标准没啥不好的。GFM 好像也没有完全确定的标准规范吧。

  • 上一页
  • 1
  • 2
  • …
  • 27
  • 28
  • 29
  • 30
  • 下一页
关于 / RubyConf / Ruby 镜像 / RubyGems 镜像 / 活跃会员 / 组织 / API / 贡献者
由众多爱好者共同维护的 Ruby 中文社区,本站使用 Homeland 构建,并采用 Docker 部署。
服务器由 赞助 CDN 由 赞助
iOS 客户端 / Android 客户端 简体中文 / English