• 一个页面的内容分为3类,不同内容的方案如下:

    内容 方案
    不会变 硬编码
    偶尔会变 发布的时候,生成静态文件
    经常会变 在静态文件的JS中,动态加载
  • 首先,bootstrapbootstrap-sass用一个gem就行,不用都用。 推荐这两个gem都不用, 如果一定要用,用这个 rails-assets-bootstrap

    另外,注意下避免gem版本冲突,可以尝试:

    1. 使用下面的命令运行程序:

      bundle exec bin/rails s
      
    2. config.ru文件的开始,增加下面的代码片段:

      require 'bundler/setup'
      
    3. 开发环境使用rvm,不同的项目使用不同的gemset。

    如在项目中定义.ruby-version文件和.ruby-gemset文件。

    1. 部署环境可以使用Dockerfile文件做成镜像 文件中使用增加下面的代码: RUN bundle install --without development test
    • 第一个报错,是因为ES的默认内存大于1G,所以需要调整JVM的-Xms-Xmx参数
    • 第二个报错,没有遇到过,但是-Xmx后面的单位可以用m,如-Xmx128m
  • 如果不是使用unicorn服务器,可以使用God监控内存,当超过设定的阀值自动重启,但不确定是否影响请求。

  • 问题一

    数据来源:中华人民共和国行政区域规划(国家统计局发布)最新的发布时间为2014-01-17 15:04

    1. 是要在数据库中存储这些所有的省市区信息
    2. csv之类的格式,或者json,yaml之类的只是数据外在的表现形式,这个看具体的需求

    问题二

    结构存储:

    1. 关联的表记录的是主键.底层存储结构必须要有行政区域代码的字段,便于后续升级,如北京市是110000,北京市-北京市是110000,北京市-北京市-东城区是110101
    2. 要是将将存储格式和表现形式分开,就不会有这个问题.表现形式: 比如,北京市,可以表现为"北京",缩写"京"",首字母"B", 拼音"BJ" 如果是直辖市,合并市辖区和县为直辖市的名称 如果是地级市,去掉市辖区和城区 如果是省直辖县级行政区划,新疆维吾尔自治区直辖县级行政区划, 合并直辖县级到市

    问题三:

    362市, 2850区, 这不是很复杂,自己动手,扩展性和维护性由自己决定...

  • 更喜欢这样来处理图片预编译😄

    config.assets.precompile += %w( *.png *.jpg *.jpeg *.gif */*.png */*.jpg */*.jpeg */*.gif)
    
  • 3q 4 @dotcomXY 's code

    post :create, picture: fixture_file_upload('/test/data/logo.png', 'image/png')
    

    and the @dotcomXY's book

  • 手持移动设备用hover不合适。。。

  • 令人苦恼的性能问题 at 2014年02月01日

    EM是采用select的IO模式,如果不阻塞,理论上单机C10k,检测下你的一个页面不配置页面缓存时,需要阻塞多少ms,瓶颈在那里,就优化那里,@zangcw,总觉得数据是这样出来的: 100并发=20个默认的rack(如thin)服务器的线程数(每个都阻塞执行)*4台单机

    • &将block块转换成proc对象
    • def block.each定义了一个单件方法,接收者是上一步的proc对象
    • yield(call)中call,接收者self是proc对象,proc对象中的call方法返回这个可执行对象的结果
    • yield将这个结果传递给外部块的第一个参数

    * response.body=block这句指明了上一步的外部块是rack中间件或服务器中传入的,因为rack标准中规定body要响应body.each{外部块}

    综上,sinatra的body扩展了rack的body,不仅能each静态编码,还能each动态内容,通过的代码块的延后执行 @biaobiaoqi,新手不建议先看sinatra