タグ

Sinatraに関するmikage014のブックマーク (25)

  • webサーバー死活監視自作してみた by ruby + sinatra + heroku - shoprevのブログ

    自分のサービスの監視とか全くしてないのでどうかと思い作ってみた。 定期的にwebサービスへGETリクエストを送りレスポンスが200以外だったらアラートメールを送る っていう単純なもの デモ http://webservicemonitor.herokuapp.com/ ソース shoprev/webservicemonitor · GitHub 定期実行はrufus-scheduler gemで require 'rufus-scheduler' scheduler = Rufus::Scheduler.new scheduler.every '3h' do # do something every 3 hours end webページの表示はsinatraのstreaming使った require 'sinatra' set server: 'thin', connections: []

    webサーバー死活監視自作してみた by ruby + sinatra + heroku - shoprevのブログ
    mikage014
    mikage014 2015/10/21
    rufus-schedulerはpassengerと共に寝てしまうらしく定期監視できなかった
  • [PR]rack-webconsole-pry を使ってみる、あとWeb+DB Pressに書きました - Qiita

    require 'bundler' Bundler.setup require 'sinatra' require 'rack-webconsole' require 'cgi' configure :development do use Rack::Webconsole Rack::Webconsole.inject_jquery = true Rack::Webconsole.key_code = [96] end get '/' do @foo_value = settings.foo_value rescue nil erb <<EOT <!DOCTYPE html> <html> <head><title>Rack::Webconsole sample</title></head> <body> <h1>Rack::Webconsole sample</h1> <pre styl

    [PR]rack-webconsole-pry を使ってみる、あとWeb+DB Pressに書きました - Qiita
  • SinatraでHello Worldするまで | blog.nomnel.net

    続き-> SinatraでActiveRecord使う Gemfile作ってbundle installする. source 'https://rubygems.org' gem 'sinatra' 体書く. app.rbに書くとする. require 'sinatra' get '/' do 'Hello World!' end config.ru書く. require './app' run Sinatra::Application 起動する. bundle exec rackup で, http://localhost:9292にブラウザでアクセス.

    SinatraでHello Worldするまで | blog.nomnel.net
  • Sinatra+Haml+Omniauthをスカッと体感する - Back yard : yuya_lush’s report

    ちょっと今までやってないSinatraとHamlを試してみようと思い立ち、何気なくOmniauthを使ってTwitterで認証する部分のみを作ってみました。怖いくらいあっさりできたのでレポートしてみます。 下準備1 Ruby1.9系のインストールをしておいて下さい。 Ubuntu11.04の場合を書いておくと sudo apt-get install make gcc wget libssl-dev zlib1g-dev libreadline-dev libxml2 libxml2-dev libxslt1-devを行い http://www.ruby-lang.org/ja/downloads/からruby 1.9.2-p180のtar.gzのリンクをコピーしてwgetで取得します。configureとmakeとmake installでインストールして下さい。 その後 sudo ge

    Sinatra+Haml+Omniauthをスカッと体感する - Back yard : yuya_lush’s report
  • 橋本商会 » HerokuのSinatraにバックグラウンドワーカーを詰め込んで節約

    Webアプリと同じプロセスにworker入れてお金節約できる。 Webアプリは “リクエスト来る→サーバーで処理→レスポンス返す” というのを繰り返すわけだが、サーバーでの処理に時間がかかる場合にそこを別のプロセスに任せて、先にレスポンスを返しておいて、あとで結果は取りに来てよ、という実装をする事がある。 時間がかかる処理は2つに大別できる。 動画をエンコードするとか。CPU負荷が高くて時間がかかるのでWebサーバーとは別の場所で動かしたい Twitter APIを10回ぐらい使った結果をまとめて返すとか。CPU負荷は低いけどIO待ちが長い 2の方について、HerokuRuby環境で安く上げる方法をまとめる。 手法 HerokuのcedarスタックでRuby使う時はwebサーバーとしてThinが起動する。 ThinはEventMachineの中で動いてるので、EM::defer等が使え

  • Sinatra-ActiverecordでDBをマイグレーションする - Qiita

    sinatra/activerecordのrakeタスクを利用して、DBのマイグレーション処理を勉強したのでメモ。元々はherokuDBを使うための方法を調べてたら、DBマイグレーションが必要となったのがきっかけ。herokuでの利用についてはまた今度まとめる。 ちなみに、rakeはRubyのビルドツール。JavaのAntみたいなもの。Rakefileにrakeタスクを記述しておくと、いろんなビルドができるようになる。 version ruby: 2.0.0p451 (2014-02-24 revision 45167) rake: 0.9.6 gem: 2.0.4 Bundler: 1.5.2 Gemfile bundleは「./vendor/bundle」にインストールすることとする。 Gemfileは$ bundle initとすると、自動で生成される。

    Sinatra-ActiverecordでDBをマイグレーションする - Qiita
  • Sinatra: README (Japanese)

    http://localhost:4567 を開きます。 ThinがあればSinatraはこれを利用するので、gem install thinすることをお薦めします。 目次 ルーティング(Routes) Sinatraでは、ルーティングはHTTPメソッドとURLマッチングパターンがペアになっています。 ルーティングはブロックに結び付けられています。 get '/' do .. 何か見せる .. end post '/' do .. 何か生成する .. end put '/' do .. 何か更新する .. end patch '/' do .. 何か修正する .. end delete '/' do .. 何か削除する .. end options '/' do .. 何か満たす .. end link '/' do .. 何かリンクを張る .. end unlink '/' do ..

  • Ruby の Sinatra を使ってとりあえず Web アプリを立ち上げてみる - Qiita

    Ruby の Sinatra を使ってとりあえず Web アプリを立ち上げてみる 2018-11-27 上から順番に内容を更新中です。大まかな記事内容は変わりません。 0. 概要 始めよう - Sinatra で自学自習するよ、って人には物足りないかもしれません。 各項目での所要時間は自身の適当な経験にもとづき記載しておきました。 0.1. この記事でやること、やらないこと とりあえず Web アプリをローカル端末で起動し、表示してみる( GET ) フォームに入力して登録( POST )とかまではしません(よって DB は使用しません) URL に値を指定し、それを画面に表示してみる、はやります 0.2. 想定する対象者 Web アプリとか自分で動かしたことないです、的な方 Ruby on Rails で挫折しました、的な方 想定作業時間 30〜60分 0.3. 用意するもの なるべくあ

    Ruby の Sinatra を使ってとりあえず Web アプリを立ち上げてみる - Qiita
  • Rails vs. Sinatra by Example

    Paul Sobocinski Paul has over ten years of full-stack web applications development experience. He has built and scaled apps on LAMP stacks as well as on Ruby on Rails. He currently works at Nulogy as a Software Developer, where he enjoys practicing TDD and pair programming on a daily basis. 1 Introduction In this article, we're going to compare the relative merits of Ruby on Rails and Sinatra by b

    Rails vs. Sinatra by Example
  • Sinatra-ActiverecordをHerokuにPushする - Qiita

    sinatra/activerecordを使ってDB操作するプログラムをHerokuへアップロードする際のメモ。 Herokuでアカウントを作っていることが前提。 Herokuの設定 まず、Herokuにpostgresqlをアドオンする。 Herokuのマイページにログインして、「Add-ons」タブをクリックして、Heroku Postgresを選択するとアドオンできる。Hobby Devプランだと無料で20コネクション、1万行まで利用できる。 アドオンすると、HEROKU_POSTGRESQL_(COLOR)_URLというデータベース名(ショートカット名)が割り当てられる。 ちなみにローカルマシンの端末から下記コマンドでもアドオンできる。 $ heroku addons:add heroku-postgresql ... Attached as HEROKU_POSTGRESQL_Y

    Sinatra-ActiverecordをHerokuにPushする - Qiita
  • さくらVPS(CentOS)にPassenger+Apache+Sinatra - Qiita

    # モジュールのインストールに必要なものをインストール # 自分の環境ではこの4つがなかった % yum install curl-devel % yum install httpd-devel % yum install apr-devel % yum install apr-util-devel # passengerのapacheモジュールのインストール % passenger-install-apache2-module % passenger-install-apache2-module --snippet # 以下をPassengerの設定で使うので、メモ LoadModule passenger_module /home/masa2sei/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/passenger-4.0.18/

    さくらVPS(CentOS)にPassenger+Apache+Sinatra - Qiita
  • SinatraとjQueryでおよそ100行で作るAjax掲示板アプリケーション - 旧gaaamiiのブログ

    Web2.0と言われ始めた時代に、Ajaxという手法が広まりました。今ではAjaxを使っていないウェブアプリケーションを探すのが難しいくらい、Web開発の現場には浸透していると思います。もちろん、Ajaxを知らなくてもウェブアプリケーションは作れますが、これは使い心地を意識すれば自然と必要になってくるものです。 この記事では、実際に簡素な掲示板アプリを作りながら、現在ほとんどのウェブアプリケーションで使われているAjaxという手法を紹介していきます。ちなみに、タイトルの「100行で」というのは今回書いたapp.rb、index.erb、schema.sqlの3つのファイルのトータルがおよそ100行だという意味です。数字をタイトルに入れると読んでもらいやすいという話をどこかで聞いたので入れてみました。 ソースコードはGithubにも置いておきました。 gaaamii/ajax_sample

    SinatraとjQueryでおよそ100行で作るAjax掲示板アプリケーション - 旧gaaamiiのブログ
  • Sinatra✕HerokuのDB設定をいい感じにする。 - NOT SO BAD

    (photo credit: PaGn via photopin cc) Sinatra-Herokuのデータベース設定で前回けっこう苦戦して、 とりあえず動くとこまでしかできなかったのでその続き。 (前回の記事) NOT SO BAD.「Sinatra✕ActiveRecord✕PostgreSQLでデータベース操作。」 もうちょっと設定をいい感じにしたりします。 DB接続情報をまとめる メインのrbファイルとRakefileの両方でDB接続書いてて気持ち悪かったので modelのファイルを作ってそれをrequireするように修正。 体rbファイル 読み込んでるだけ。 #main.rb ... require './models/log.rb' get '/' do ... Rakefile こっちも読み込んでるだけ。 #Rakefile require 'sinatra/acti

  • [ruby]最初に知っておけば良かったbundlerの使い方 sinatra編

    rails編は以前書いたのでsinatraでやってみる 用途としてはDBとかいらないスタティックなサイトの構築で、でもhtmlcss、jsを生で書くのとか耐えられない。phpはマジ勘弁みたいなときにこうしてますよって感じのことを書きます。 (bundlerの使い方ってゆうかrubyでのweb制作全般って感じですね…) まず適当な場所にプロジェクトのディレクトリを作ります。 hogeとかもアレなんでポートフォリオにしときます。 $ cd ~/Web $ mkdir portfolio $ cd portfolio でプロジェクトのルートでGemfileをつくる $ bundle init Writing new Gemfile to /Users/kozo/Web/portfolio/Gemfile 中身はこんな感じだから... $ vim Gemfile # A sample Gemfi

  • 簡単Sinatra!WebAPI・OAuth認証を使ってみよう - 角幸一郎 | type IT Academy

    Rubyで簡単、マッシュアップサービスを公開してみよう!  - 第2回 - 簡単Sinatra!WebAPI・OAuth認証を使ってみよう 今回のワークは、前回学んだ「Sinatra Framework」と「Ruby」を応用し、皆さんが使ってみたいTwitter APIを使用したソースコードを提出するというものです。この記事ではオープンソースライブラリのRubygemsの使い方も解説しているので、参考に課題にチャレンジしてみてください。 第1回目だった前回は、「Ruby言語」とは何か、そしてRuby Frameworkである「Sinatra」とは何かについてお話した後、簡単にコーディングの仕方についてお伝えしました。 第2回目となる今回は、オープンソースライブラリである「Rubygems」と、前回学んだ「Ruby」と「Sinatra」を利用して、WebAPIやOAuth認証の利用方法をお

  • Sinatra frameworkに関する私見 - ローファイ日記

    エクスキューズとか 正直な話をすると、Webフレームワーク自体に関する興味は以前に比べて失われてきているので、最新のSinatraの細かいコミットまでは追っていない。 だが、2年強ほど Sinatra/Padrino 界隈を追いかけてきて得た知見と言うか考えについてまとめるのは一定の価値がある、少なくとも自分に取っての価値は非常に大きいと思うのでここに書いていきたい。 副次的には、ミスコンセプトによってSinatraを利用して、結果必要の無いイメージの悪化を招く事態を一件でも減らせればと思う。 Sinatraはmicroframework、あるいは「フレームワークではない」 公式の説明にある通りである。 具体的にどういうことかと言うと、Sinatra単体ではウェブサービスに必要な要件を満たさないかもしれないと言う話である。Sinatraが持っていないものについては、Sinatra以外の場所

    Sinatra frameworkに関する私見 - ローファイ日記
  • Dashing - The exceptionally handsome dashboard framework.

    Heads-up: Dashing still works great, but is no longer maintained. Read up about it over here. You can also use the fork of the project. Dashing is a Sinatra based framework that lets you build beautiful dashboards. Check out a demo over here. Here's another one, optimized for 1080p screens. Key features: Use premade widgets, or fully create your own with scss, html, and coffeescript. Widgets harne

    mikage014
    mikage014 2012/11/09
    Sinatraベースのダッシュボードフレームワーク
  • 橋本商会 » apache2のサブディレクトリをthinで起動してるsinatraにプロキシする

    SinatraやRailsは開発は楽だけどデプロイ方法がいろいろあって悩む。 最近はpassengerを使う方法が流行ってるけど、あいにく学校に置いたサーバーでサブドメインが使えないので同一ホスト名でapacheと共存させるしかない。 passengerでもRailsBaseURIだったか?を設定すればサブディレクトリでRack対応アプリを動かせるが、 今回は1年前からRails+mongrelのデプロイに使っているapache2のサブディレクトリをmongrelで起動してるrailsにプロキシする – 橋詳解と同じ方法でSinatra+Thinをデプロイした。 Railsではmongrel_clusterで複数起動させたrailsにapache2のmod_proxy_balancerでアクセスを割り振ったが、同じ設定でsinatra+thinにも割り振れる。 結果、橋商会 Twitt

  • SinatraでTwitter Streaming APIにアクセスする超簡単なWebアプリのつくりかた:Kenn's Clairvoyance

    Twitterには、ストリーミングAPIという、プッシュでリアルタイムに情報を受け取ることのできるAPIが用意されています。 これを使えば、定期的にポーリングをしたりすることなく、誰かが発言した時点で即座にメッセージを受け取れます。 しかし、これを使うためには、TCP接続をTwitterに対して張りっぱなしにしておく必要があり、Webアプリなどで使うのに敷居が高いと感じている人もいるのではないでしょうか。 今回は、「そんなことないよ、超簡単だよ」ということを、Rubyベースのサンプルで示したいと思います。 なぜそんなことが簡単にできるのか、その秘密を先に種明かしすると、Ruby用のWebサーバとして急速に人気を獲得し、デファクトの座をとりつつある「Thin」というWebサーバが、内部的にEventMachineという非同期サーバを使用しているので、その機能を使うことで、今までのWebアプリ

    SinatraでTwitter Streaming APIにアクセスする超簡単なWebアプリのつくりかた:Kenn's Clairvoyance
  • 第41回 Sinatra 1.0の世界にようこそ | gihyo.jp

    はじめに SinatraはRubyで記述されたWebアプリケーションを素早く、簡単につくるためのDSL(ドメイン固有言語)です。 すでに第7回で、原悠さんにより「小規模Webアプリのためのフレームワーク、Sinatra」というかたちで紹介されています。 簡潔な文法で、高い表現力を持つSinatraは、アメリカRubyコミュニティや企業を中心に、瞬く間にユーザを増やしました。また、Rubyという一言語に留まらず[1]⁠、Sinatraを模したフレームワークが多く作られている現状からも、SinatraはWebアプリケーション開発そのものにも大きな影響を与えたと言えます。 最近ではここ日でも、個人利用を中心に、そこかしこでSinatraを使って開発をしている、という話を聞くようになりました。筆者自身、1ユーザとして現在業務で利用しており、1年前は知る人ぞ知る存在だったSinatraは、実際に

    第41回 Sinatra 1.0の世界にようこそ | gihyo.jp