共找到 10 篇tag为 "rails" 的文章

29 June 2018

docker-compose部署实践

将项目交付给一个没有 Rails开发经验的团队来部署上线成本非常高,Rails 常用的部署方式是使用 Capistrano 或者 Mina,如果对方团队的技术栈是基于 windows环境开发,那在本地跑项目的执行部署脚本的难度会非常的高 。这个时候 Docker就能很好的解决这个问题,Docker 将应用程序与该程序的依赖,打包在一个文件里面,对方只要执行这个文件就可以,不用担心环境问题。

docker
read more
22 March 2018

Rollbar与Source Map在Rails项目中的应用

写这篇文章主要为了总结近期Rollbar在Rails项目中的使用情况,其中包括Rollbar与Heroku的合作关系,Rollbar跟Source Map如何搭配使用。当我们的线上压缩过的代码发生异常的时候,我们也能准确定位到是哪一行发生的异常。有助于我们构建更加健壮的应用程序并且提高我们的维护效率。

rollbar-logo
read more
19 March 2018

ActiveSupport::Concern源码分析

有人说过,好的文学作品,必定是经过反复的斟酌,不断修改的结果。我相信好的代码,优秀的工具也必然要经历这个过程。Rails的发展便是如此,无数开发者对已有代码的不断调整完善,花费了无数的时间与精力才使得我们能够有一个如此趁手的全栈式开发框架,并且附带着赏心悦目的代码。而ActiveSupport::Concern无疑是这个趁手框架中重要的一环,它使我们能够更优雅地去扩展我们的模块。具体用途可以点击文档查看。

activesupport-concern
read more
11 November 2016
api

Rails 5 API 实践小结

最近公司尝试使用 rails 5 api,以下这篇文章算是这段时间体验的一些总结。

Rails 5 的 API 模式

Rails 5 的 API 模式是一个出了挺久的功能了,我们主要还是参考 guide 里面的内容来实践的。

rails-5-logo
read more
22 July 2016

基于腾讯云服务的 Rails 负载均衡部署方案简介

最近应客户要求,将网站的单机部署架构,改为了双机负载均衡架构,以提高整个系统的可用性。

方案一、自建方案

1.1 负载均衡:Keepalived + Nginx + HAproxy

自建负载均衡方案的主要原理是,在每一处有单点故障风险的地方(如 Web server、Rails app server、数据库等),都使用 keepalived 配置至少两个独立进程,防止其中一个服务宕机后,导致整个网站不可访问。

rails-loadbalance-deployment-cover
read more
28 June 2016

Reddot RubyConf 2016 总结

今年代表公司(Beansmile)前往新加坡参加Reddot RubyConf, 收获满满,趁现在有时间,简单总结一下,供自己接下来的学习方向和目标,查漏补缺, 也给未到场的朋友分享一下。 以下内容,仅供参考,如若有误,请指正。

Cltmd Kwuya Em Gcn
read more
21 June 2016
MVC

BackboneJS开发总结

BackboneJS - A MVC Javascript Structure

Background: 一直致力于尝试各种技术的豆厂,在某个客户项目中使用了Backbone.js作为前端JS框架。

Technology Stack:Rails, jQuery, Coffeescript, Backbone.js

What is Backbone.js

Backbone.js is a MVC Javascript Structure

Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.

如果你熟悉Rails或者熟悉MVC,我敢保证你可以很快地掌握Backbone.js

BackboneJS
read more
13 June 2016
BDD
TDD

简介如何测试Rails应用

If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization. -- Gerald Weinberg, Weinberg’s Second Law

为什么我们需要自动化?

测试无疑会提高代码的正确性,而自动化不但能保证测试的可重复性,省去了手工测试的麻烦,也大大提高了生产力。

TDD & BDD

TDD,BDD是现在流行的测试方式。TDD是为了把事情做对(Do things right),而BDD主要是为了做正确的事(Do rignt thing). 在开发过程,BDD应先于TDD。因为方向错误了,做的再好,也没有意义。

Test-driven development

TDD要求,在写代码前先写测试(有时也会先写代码,再补完测试)。TDD不但可以确保代码的正确性,还可以帮助我们分解问题,保护已有代码,使代码有更好的维护性。

TDD流程 -- Red, Green, Refactor

TDD要求我们,在用代码实现前先要先思考我们期待这段代码做什么、如何同其他部分相互合作的,之后才是如何实现代码。

  1. Red: 写出测试。由于这个时候代码还没实现,所以测试是红色的。
  2. Green: 用最简单的代码让测试通过,让测试编程绿色。TDD并不主张过分的think ahead。代码可以通过测试即可。随着我们测试的增加和对问题理解的深入,可以不断的对代码进行改进。
  3. Refactor: 重构,不单单要重构实现,还要重构测试。尽量避免冗余,尽量使代码更好维护。

    重复以上过程。

Test introduction
read more
13 November 2014

RAILS中利用YAML文件完成数据对接

最近在做的Ruby on Rails项目中,需要将远程数据库中的数据对接到项目数据库中,但是远程的数据不仅数据表名跟字段命名奇葩,数据结构本身跟项目数据结构出入比较大,在数据导入过程中代码经历了几次重构,最后使用了YAML文件解决了基本数据[^basic-data]对接的问题。在此写一篇博文,我会尽量重现一路过来的代码变更,算是分享一下我的思考过程,也算是祭奠一下自己的苦逼岁月。

Splash Background
read more
Contact Us

Please enter the correct information