X



【RoR】Ruby on Rails Part20©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん 転載ダメ©2ch.net
垢版 |
2016/09/22(木) 14:43:33.99ID:???

http://tamae.2ch.net/test/read.cgi/php/1409423461/

■参考サイト
<英語>
本家:http://rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails
http://ruby-toolbox.com/
http://rubygems.org/
http://agilewebdevelopment.com/plugins/top_rated

<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/

Rubyについて Part49
http://peace.2ch.net/test/read.cgi/tech/1382307475/

Ruby 初心者スレッド Part 58
http://echo.2ch.net/test/read.cgi/tech/1458735404/
0379nobodyさん
垢版 |
2017/06/01(木) 00:08:51.02ID:+ezbGRtW
>>376
わざわざこのスレまで来て忠告ありがとうな
0380nobodyさん
垢版 |
2017/06/01(木) 09:04:49.02ID:???
そんでみんなJavaで消耗してるんじゃなかったっけ?

俺はやだけど。
0381nobodyさん
垢版 |
2017/06/01(木) 17:26:13.77ID:???
XML地獄だったJava(当時主流だったStruts)と対比してRailsが流行った時代はもう過去のもの
JavaにもRailsライクなWAFあるしバイトコードコンパイル時にエラー検出できるからRailsより生産性高いよ
0382nobodyさん
垢版 |
2017/06/01(木) 17:27:35.30ID:???
そして動作速度も早い
AndroidにKotlinが採用されたので
受託(ブラック企業)からスマホアプリ開発自社サービス企業(ホワイト企業)に転職する際にも有利だし
0383nobodyさん
垢版 |
2017/06/01(木) 19:59:08.21ID:???
>>381
残念ながらそんなエラー検出ごときで上がる生産性は微々たるもので、型定義の手間で足が出る
Play!で実際に開発をした経験の結果
0384nobodyさん
垢版 |
2017/06/01(木) 20:27:04.64ID:???
型定義の手間ってなんだ?
だったらGolang使えば?
0385nobodyさん
垢版 |
2017/06/01(木) 20:41:27.88ID:???
いまはRustかKotolinだよ
0386nobodyさん
垢版 |
2017/06/01(木) 20:54:04.14ID:???
GAE/Rustはない
無料で始められるPaaSのGAE/Go一択だな
0387nobodyさん
垢版 |
2017/06/01(木) 21:52:56.92ID:???
>>384
Java否定されたら次はGolangか
とにかく何がなんでもRubyを否定したいだけなんだな
0388nobodyさん
垢版 |
2017/06/01(木) 21:55:32.22ID:???
>>384
GolangはただのBetter C++
C++みたいな分野で楽に書きたいなら非常に有用な言語だが、Railsは畑違い
0389nobodyさん
垢版 |
2017/06/01(木) 22:15:20.41ID:???
RUBYMOTIONでAndroid開発している人どうですか?
今、資格取得に忙しいんで時間が取れないのだけど、終わったらやってみたいと思っている。
0390nobodyさん
垢版 |
2017/06/02(金) 19:59:08.42ID:???
rails5.0 になってやっとleft outer joinメソッドが実装されたのは驚き
今までなかったのかよ、と
これがなくてよくDB使ってたな
まさかRailsユーザってDBはあまり詳しくない奴ばかりなのか?
0391nobodyさん
垢版 |
2017/06/02(金) 20:07:40.39ID:???
よくJavaで構築するようなイントラ系ビジネスアプリケーションを受託開発するビジネスでRailsを使っている会社は少ない
主にBtoCの自社サービス系(web)の構築に使われる
大規模なアクセスを捌かなきゃいけないのでスケーラビリティの低いRDBMSは選択されずNoSQLなどが使われる
NoSQLはJOINが必要なデータは最初から結合して保存しておかないとパフォーマンスが落ちる
0393nobodyさん
垢版 |
2017/06/02(金) 20:13:33.76ID:???
ついでに言っておくとWebアプリケーションのパフォーマンスボトルネックは
データベースのディスクI/Oが大部分なので
いわゆるコントローラーの処理速度をGolangやJavaで高速化しても
全体はそれほど早くならない
0394nobodyさん
垢版 |
2017/06/03(土) 03:17:48.32ID:???
>>390
> rails5.0 になってやっとleft outer joinメソッドが実装されたのは驚き

だってSQL使わないじゃん。結合なんて勝手にやってくれて
内部でjoinしてくれるでしょ?
なんでわざわざ自前でjoin書かないといかんのだ?って感じなんだが
0395nobodyさん
垢版 |
2017/06/03(土) 06:33:10.10ID:FxhPauU7
>>394
それな

わざわざ5レスに分割してるのも
思いつきで書き散らしてまったく計画性が感じられない
0396nobodyさん
垢版 |
2017/06/03(土) 09:32:56.62ID:???
>>394
従テーブルの外部キーを持たない主テーブルのデータは空白で表示したいことって多いだろ
それをなんでわざわざ毎回実装しないといけないのよ?
0397nobodyさん
垢版 |
2017/06/03(土) 09:50:49.71ID:???
>>396
こんな感じ?

class Hoge; end
class Fuga; belongs_to :hoge; end

Fuga.all.each {|fuga| p fuga.hoge&.name }

eager_loadはお好みで
0398nobodyさん
垢版 |
2017/06/03(土) 18:28:30.87ID:???
>>397
セルフネーバオペレータ使うのはちょっと違うと思う
0400nobodyさん
垢版 |
2017/06/04(日) 19:09:56.20ID:???
>>399
DBの責務とRubyの責務がぐちゃぐちゃになってるから
その処理はDBがすべきもの
0401nobodyさん
垢版 |
2017/06/04(日) 20:15:41.46ID:???
>>400
え?LEFT OUTER JOIN使ったとしても似たようなコードになるよね?
0402nobodyさん
垢版 |
2017/06/04(日) 20:22:56.25ID:???
>>401
データのある無しを判断して空白で返す処理をしてるのがMySQLなのかRubyなのかの違いを言っています
コードの似たりよったりではありません。
0403nobodyさん
垢版 |
2017/06/04(日) 20:25:34.07ID:???
>>402
でも似たようなコードで同じことができるなら別にいいじゃん

SQL原理主義なんてバッチみたいな速度にシビアな場面でだけ使えばいいんだし、
UIみたいなそうでもないところはコードの保守性の方が大事だよね
0404nobodyさん
垢版 |
2017/06/04(日) 20:34:04.62ID:???
>>402
え?データのあるなしを判断するはあくまでDBでしょ?

ActiveRecordはそこで投げるSQLを隠蔽しているだけで、ActiveRecordだってデータのあるなしはDBに問い合わせてるよ
そこでLEFT OUTER JOINを使うか、eager loadを使うかで投げるSQLの内容は違うだろうけど、Rubyがデータのあるなしを
判断できるわけないでしょ
0405nobodyさん
垢版 |
2017/06/04(日) 20:57:07.63ID:???
>>403
完全に素人の発想だな

この場合は大したことしてないけど、
もっと複雑なSQLで大量のデータを対象にした場合どっちがスケールするかな?
そういうことを考えないと
0406nobodyさん
垢版 |
2017/06/04(日) 20:57:38.44ID:???
いままではDBのしごとで
それぞれの立場で仕事してたのに
Ruby側でやりたいとかわがまま言い出して
Ruby側で実装されたって流れ。
0407nobodyさん
垢版 |
2017/06/04(日) 21:03:43.41ID:???
>>406
RubyはDBの仕事を取ってたりしてないよ
ActiveRecordがうまく隠蔽してるだけ

というかRubyがDBの仕事をできるわけないじゃん
0408nobodyさん
垢版 |
2017/06/05(月) 13:41:25.89ID:???
SQL書きたくない(書けない)ってひとがRubyというかRailsというかActiveRecordに流れただけ
0409nobodyさん
垢版 |
2017/06/06(火) 00:57:06.00ID:???
>>408
SQLだけでアプリが作れない以上、ActiveRecordになるのは当然だと思うが?
0410nobodyさん
垢版 |
2017/06/07(水) 01:48:34.20ID:klvA1t8P
ヒカル TV出演「年間5億は稼ぐ勢いですね」
https://www.youtube.com/watch?v=G7qL6ftpets
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
https://www.youtube.com/watch?v=asF2wQ2xhjY&;t=61s
ユーチューバーの儲けのカラクリを徹底検証!
https://www.youtube.com/watch?v=FUSb4erJSXE&;t=504s
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
https://www.youtube.com/watch?v=Y7DAQ0RKilM&;t=326s
誰も言わないなら俺がYouTuberのギャラ相場を教えます
https://www.youtube.com/watch?v=E4q-vaQh2EQ&;t=118s
YouTuberになりたいのは馬鹿じゃない!YouTuberになる方法
https://www.youtube.com/watch?v=Fr0WXXZRMSQ

最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいいぞ。副業にぴったしだ
やろうと思えばスマホがあればできるぞ
最低2年はやらないとここまではいかないだろうけど才能とアイデアと
企画力と継続力があればが大儲けできる可能性がなくもない
まだまだ他の職種に比べれば競争率は低いからオススメ
顔出したくないならラファエルみたいに仮面つければいい
ハロウィン用でいろいろな仮装マスク売ってるからオヌヌメ
0411nobodyさん
垢版 |
2017/06/16(金) 09:44:25.19ID:???
すみません、PHPから流れてきてrails初心者なんですが
ActiveRecordでDBからレコード取得する時にSQLのSUBSTRみたいに
レコードの文字列の一部だけ取得するやり方ってどう書けばいいんでしょうか?
頭の3文字だけ欲しいみたいな感じです
0412nobodyさん
垢版 |
2017/06/17(土) 00:13:13.64ID:???
NanikanoModel.find_by(1).nanikano_mojiretsu[0,3]

NanikanoModelのnanikano_mojiretsuフィールドの型がstring型(DB定義var_charとか)だったらこれでいける。

[0..2]
でもOK
0414nobodyさん
垢版 |
2017/06/19(月) 17:58:55.31ID:CGBm0H41
私が億万長者になった日 &#8211; Medium Japan &#8211; Medium
2006年に突然状況は大きく変わった。
ジェフ・ベゾスがBasecampに関心を持ってくれたので、ジェイソンと私はそれぞれ会社の非支配持分を数百万ドルで売った(Basecampは設立当初から財務状況が悪くなかったので、無理に資金調達する必要はなかったのだが)。
私は億万長者になったのだ!

http://b.hatena.ne.jp/entry/s/medium.com/japan/4614d3f4a255
https://medium.com/japan/4614d3f4a255
0415nobodyさん
垢版 |
2017/06/20(火) 02:42:04.66ID:???
数億円で売ったのか、安いな
上場したら糞みたいな会社でも時価総額50〜100億くらいになるのに
もったいない
0416nobodyさん
垢版 |
2017/06/21(水) 13:38:29.27ID:???
>>411
str = "hello"

str.first(1) # => "h"
str.first(2) # => "he"
str.first(3) # => "hel"
0417nobodyさん
垢版 |
2017/06/21(水) 21:08:06.86ID:???
なあ。rails の vendor ディレクトリの下のソースコードって触っちゃいけないんだよな?
gem とかからインストールされるファイル群だと思うんだけど、そうでもないんだろうか。
0418nobodyさん
垢版 |
2017/06/21(水) 22:26:49.64ID:???
>>417
触ってもいいよ
バージョンアップとかで触ったのは全部消えるけど

デバッグとかで触ることはよくあるし
0419nobodyさん
垢版 |
2017/06/22(木) 00:36:18.71ID:???
>>418
ああ。そう言うものなんだ。ありがとう。
あのファイルを編集するのが一番簡単なんだよな。。どうしよう。
0420nobodyさん
垢版 |
2017/06/22(木) 13:13:12.33ID:???
編集してメンテを続けるのはつまりフォークになるんだが
短期的なデバッグ以外なら茨の道
0421nobodyさん
垢版 |
2017/06/23(金) 09:22:01.65ID:NkG4Dxg2
要するにメルカリで情報流出させるようなDeployしてるのか君らは
0422nobodyさん
垢版 |
2017/06/23(金) 09:23:29.69ID:NkG4Dxg2
>>420
forkしたプロジェクトで編集してそこからインスコだな
0423nobodyさん
垢版 |
2017/06/28(水) 12:21:29.81ID:???
瑕疵担保責任(かしたんぽせきにん)

瑕疵担保責任のポイント

民法改正で事実上期限が「無制限」になった
バグや設計のミスなどは、瑕疵担保責任
納品物に不具合があれば損害賠償を請求される可能性もある
不具合を指摘されたらすぐに行動をとるべし
軽微なミスでも先延ばししない

http://www.atmarkit.co.jp/ait/articles/1706/26/news014.html
http://itpro.nikkeibp.co.jp/atcl/news/17/052601508/?rt=nocnt

改正法では欠陥に気付いてから1年以内にITベンダーに通知すれば、
通知後5年以内は修正や報酬の減額などを求められるとしている

全ベンダーが泣いた民法改正案を解説しよう その1
http://www.atmarkit.co.jp/ait/articles/1609/14/news009.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_2.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_3.html

ポイント1:修補や損害賠償、契約解除の期限がなくなる

従来あった「瑕疵担保期間は引き渡しから1年」という考えはなくなる。
条文にある通り、注文者は成果物が契約の目的に適合しないことを発見したら、
その「発見したときから1年以内」ならさまざまな請求ができる。発見が10年後なら、
11年後まで請求可能なのだ。

もっとも、現実のユーザーとベンダーの関係でも、たとえ契約書に「瑕疵担保責任期間は納品から1年と」明記されていても、
「2年目以降は不具合の修正に対応しない」と主張するベンダーはまれだ。多くの場合は、納品から何年たっても、
バグが見つかればユーザーのところに飛んで行き、無償で改修するだろう。
0424nobodyさん
垢版 |
2017/06/28(水) 13:09:16.83ID:???
サーバー変えたら動かなくなりました。
OSアップデートしたら動かなくなりました。
OS変えたら動かなくなりました。
WEBサーバー変えたら動かなくなりました。
WEBサーバーにパッチプログラムをあてたら動かなくなりました。
DB変えたら動かなくなりました。
DBをアップデートしたら動かなくなりました。
PHPのアップデートプログラムを更新したら動かなくなりました。
Railsアップデートプログラムを更新したら動かなくなりました。
Rubyアップデートプログラムを更新したら動かなくなりました。
高負荷になったら動かなくなりました。 無償で修理してください。損害も請求します。
しばらく放置していて、最近動かしたら動かないです。原因はわかりません。これは御社の不具合なので無償で修理してください。

無償で修理してください。損害も請求します。

納品先の会社 10社から同時に

重大な脆弱性が現バージョンから発見されました。こちらでアップデートしたところ、起動ができなくなりました。
至急弊社に来て修正作業をお願いします。なおお金は払わない。また営業に損失が出たので損害請求もします。
0425nobodyさん
垢版 |
2017/06/28(水) 14:11:50.18ID:???
アップデートしない契約を結べばいいのだろうが
セキュリティーアップデートがある限りそれは不可能
0426nobodyさん
垢版 |
2017/06/29(木) 09:45:27.19ID:???
無視するなら瑕疵担保責任法で訴えるぞ!
0427nobodyさん
垢版 |
2017/07/05(水) 02:03:39.93ID:QBnJwfas
マイクロサービスはもう十分 | プロダクト・サービス | POSTD
http://postd.cc/enough-with-the-microservices/

マイクロサービスの強み弱み
マイクロサービスには分散システムとしての複雑さがあり、注意しなければならない課題がある。
例えば、“ネットワークの遅延や耐障害性、メッセージのシリアライゼーション、
信頼できないネットワーク、非同期性、バージョニング、アプリケーションの各層に対するロードなど”だ。
http://www.infoq.com/jp/news/2014/06/microservices

コンピュータにおいて、制御を行う要素の数が1個の場合、2個の場合に比べて3個以上の場合で複雑さは段違いに異なる。
http://anond.hatelabo.jp/20130319023155

太陽と地球のような二体問題は厳密に解けるが、例えば月の運動も考える一般の三体問題以上になると解析的に解くことはできないとされる
http://ja.wikipedia.org/wiki/多体問題
0428nobodyさん
垢版 |
2017/07/05(水) 12:51:55.60ID:???
分割粒度が小さすぎると、組み合わせ爆発が起こって、

階乗・巡回セールスマン問題のように、プログラミング不可能!
0429nobodyさん
垢版 |
2017/07/11(火) 01:37:56.23ID:f9cGST+Q
すみません、コントローラで

def index
UNIXSocket.open('/tmp/myapp.sock') do |sock|
sock.write(params.to_query)
rt = sock.readline
render text: rt
end
end

ということがしたいのですが、どうも
rt = sock.readline
のところで処理が止まってしまうように見えています。
renderの部分まで処理を進めるにはどのような書き方をすればよいのでしょうか。
教えて頂けますと嬉しいです。
0430nobodyさん
垢版 |
2017/07/11(火) 01:39:31.73ID:f9cGST+Q
すみませんよくよく考えるとrailsの質問ではないですね・・
移動します。失礼しました。
0431nobodyさん
垢版 |
2017/07/12(水) 22:24:28.86ID:???
ActiveRecord の話だと思うけど。ここでいいですか。

前段
とあるモデルクラスで管理しているテーブルのカラムに NULL 許容&ユニーク制約をつけたいと思います。
普通に validates email, uniqueness: true などとやるとユニークにはなるのですが。
レコードを追加するときにこのカラムに NULL のレコードがほかにあるとバリデーションでエラーになります。

質問
ActiveRecord のバリデーションで、ユニーク制約をつけつつ、NULL だけは重複があっても許容するような設定は出来ますか。

現状
uniqueness でやるのは諦めてカスタムバリデータでチェックするようにしてみました。
一応動いていますがもっと簡単にできそうな気がします。
0432nobodyさん
垢版 |
2017/07/13(木) 07:47:21.75ID:???
>>431
>ユニーク制約をつけつつ、NULL だけは重複があっても許容する
これDB側は対応してるの?
直接他のツール等でSQL発行するとどうなる?
0433nobodyさん
垢版 |
2017/07/13(木) 13:52:30.50ID:???
ActiveRecordいらんやん
0434nobodyさん
垢版 |
2017/07/13(木) 20:04:13.65ID:???
最新人気ランキング
1位 Java
2位 C
3位 C++
4位 Python
5位 C#
6位 PHP
7位 Visual Basic .NET
8位 JavaScript
9位 Delphi/Object Pascal
10位 Go
11位 Perl
12位 Swift
13位 Ruby
14位 Assembly language
15位 R
16位 Visual Basic
17位 MATLAB
18位 Objective-C
19位 Scratch
20位 PL/SQL

https://www.tiobe.com/tiobe-index/
0435nobodyさん
垢版 |
2017/07/13(木) 23:44:39.08ID:???
9位にまだDelphiがいるんだ…
0436431
垢版 |
2017/07/14(金) 00:11:23.89ID:???
>>432
INSERT とかで挿入する方法ですよね?
普通に複数の NULL カラムのレコードを追加できます。

>>433
既存のプログラムが、ActiveRecord でのバリデーションを実装してるんです。
0437nobodyさん
垢版 |
2017/07/14(金) 00:18:39.86ID:???
>>436
それDB側で制約付いててできるの?
0438nobodyさん
垢版 |
2017/07/14(金) 00:48:46.85ID:???
そのはずですけど。。。
0439431
垢版 |
2017/07/15(土) 01:19:08.62ID:???
確認してきました。
DB 側(MySQL)に Null:YES、Key:UNI となっていて、
そのカラムに複数の NULL レコードをインサートできていました。はい。

やぱり ActiveRecord だと対応できないんでしょうか。
0440nobodyさん
垢版 |
2017/07/15(土) 20:16:49.96ID:???
unless: :nil? とかつけたら?
0441nobodyさん
垢版 |
2017/07/16(日) 21:19:13.97ID:???
専用のvalidatorを作ってしまえば。
0442431
垢版 |
2017/07/19(水) 00:35:52.15ID:???
>>440,441
ありがとう。

確かめました。
バリデーションにも条件て指定できたんすね。。
今回は前に組んだカスタムバリデーションでとりあえず行こうと思います。
0443nobodyさん
垢版 |
2017/07/27(木) 12:56:04.70ID:W5njbIib
私が億万長者になった日
2006年に突然状況は大きく変わった。
ジェフ・ベゾスがBasecampに関心を持ってくれたので、ジェイソンと私はそれぞれ会社の非支配持分を数百万ドルで売った(Basecampは設立当初から財務状況が悪くなかったので、無理に資金調達する必要はなかったのだが)。
私は億万長者になったのだ!

http://b.hatena.ne.jp/entry/s/medium.com/japan/4614d3f4a255
https://medium.com/japan/4614d3f4a255
0444nobodyさん
垢版 |
2017/07/27(木) 12:59:26.75ID:W5njbIib
考え直そうーーRuby on Rails生みの親でBasecampの創業者がスタートアップに贈る言葉【寄稿】 - THE BRIDGE(ザ・ブリッジ)
http://thebridge.jp/2016/04/reconsider
0445nobodyさん
垢版 |
2017/08/03(木) 05:36:30.66ID:???
CakePHPやってたんだけど
Cake3とLaravelどっちが良いかな?
0446nobodyさん
垢版 |
2017/08/03(木) 05:37:09.86ID:???
まちがえた
RailsとLaravelどっちが良いかな?
0447nobodyさん
垢版 |
2017/08/03(木) 20:59:32.76ID:???
どっちも将来性がないからPythonがGoにしとけ
0448nobodyさん
垢版 |
2017/08/04(金) 00:54:23.02ID:nvjjA0iB
底辺YouTuberを3年続けてたら、海外で企業と仕事が出来るようになった話
http://www.akiraca.com/archives/youtube
4,000人ものYouTuberをマネジメントする、その仕組みと裏側とは?
https://www.wantedly.com/companies/uuum/post_articles/56228
27歳で年収8億円 女性ユーチューバー「リリー・シン」の生き方
https://forbesjapan.com/articles/detail/17174
CNNがYouTuberを28億円で買収!?CaseyNeistatさんとは?
http://do-ra.org/2017/02/26/108694/
最新トップYoutuberの年収は10億円、1億円の時代はもう古い
http://www.himatubushisp.com/entry/2017/05/10/224945
youtubeの収入・いくら稼ぐのか?ユーチューバーの実態や広告の種類
http://www.yohey-hey.com/entry/youtube
人気YouTuberヒカルの月収5000万円!!!!!!月収やで!!!!
http://tamineta2.com/post-39920/
0449nobodyさん
垢版 |
2017/08/04(金) 11:51:19.30ID:dz25BciJ
こんなオワコンフレームワークをまだ使ってる奴いるんだw
さすがにRailsは10年前のものだよ
0451nobodyさん
垢版 |
2017/08/05(土) 10:45:50.90ID:kXqZni5y
>>449
じゃあお前的今時プラットフォームはなんなんだよ
0453nobodyさん
垢版 |
2017/08/05(土) 13:19:05.63ID:O997qTF9
>>451
古代石器を武器にした老兵おつ
0454nobodyさん
垢版 |
2017/08/05(土) 13:58:39.59ID:???
すぐ老害認定する若害
0455nobodyさん
垢版 |
2017/08/08(火) 08:35:21.73ID:???
>>454
老害だなんてだれも言ってないぞ
被害妄想激しすぎてきもーいw
0456nobodyさん
垢版 |
2017/08/09(水) 13:57:52.65ID:???
若益はどんなフレームワーク使ってるんですかね
0458nobodyさん
垢版 |
2017/08/10(木) 09:27:37.61ID:???
>>457
で、どこで言ってるんですか?
被害妄想にとりつかれた病人さん?
0462nobodyさん
垢版 |
2017/08/11(金) 04:30:54.32ID:WWYBpA5m
Ruby on Railsをウェブの無料サイトで学び始めた初心者です MacBook Proで勉強してるんですけど1文字打つ毎にタッチパッドで文字の横をクリックしないと文字を打ち込めないんですけど、このやり方であってますか?

あとなぜかバックスペースが反応しなくて1回プログラムを打ち間違えたら修正できないんですけど、こういう言語なんですかね?
0465nobodyさん
垢版 |
2017/08/11(金) 21:53:20.01ID:???
質問。

Rails & MySQL の環境で、
とあるテーブルのレコードをループ処理で 500 回くらい保存しないで作ると応答がなくなる(たぶんプロセスが落ちてる)のだけど、
こういうのの原因てどういうのがあるのでしょうか。保存したらどうなるのかは試してません。
メモリを見てても実行中に特に増えるようなことはないし、別の開発用の環境だと100万回くらいやっても平然と動いてるし。
原因が分かりません。
0466nobodyさん
垢版 |
2017/08/12(土) 00:19:54.12ID:???
知らないけど、タイムアウトとか?
0467nobodyさん
垢版 |
2017/08/12(土) 11:28:56.01ID:???
分散システムについて語らせてくれ
https://www.slideshare.net/kumagi/ss-78765920

マイクロサービスの終焉 | 開発手法・プロジェクト管理 | POSTD
http://postd.cc/the-end-of-microservices/

マイクロサービスの強み弱み
マイクロサービスには分散システムとしての複雑さがあり、注意しなければならない課題がある。
例えば、“ネットワークの遅延や耐障害性、メッセージのシリアライゼーション、
信頼できないネットワーク、非同期性、バージョニング、アプリケーションの各層に対するロードなど”だ。
http://www.infoq.com/jp/news/2014/06/microservices

コンピュータにおいて、制御を行う要素の数が1個の場合、2個の場合に比べて3個以上の場合で複雑さは段違いに異なる。
http://anond.hatelabo.jp/20130319023155

太陽と地球のような二体問題は厳密に解けるが、例えば月の運動も考える一般の三体問題以上になると解析的に解くことはできないとされる
http://ja.wikipedia.org/wiki/多体問題
0468nobodyさん
垢版 |
2017/08/12(土) 21:28:12.98ID:???
>>466
ありがとう。
タイムアウトなんてあるんですね。
一度生成したレコードはもう使わないので解放?をしたいのですが、明示的に出来るモノなのでしょうか。

http://qiita.com/dainghiavotinh/items/8158213207b257670ff3
このページの3の方法を試したのですが、落ちる?タイミングが早まっただけでした。
0469nobodyさん
垢版 |
2017/08/13(日) 04:33:04.62ID:???
漏れも、RoR はよく知らないけど、
DB の一般論で言えば、1回限りの都度接続と、持続的な接続の、2タイプある

都度接続では毎回、DBに接続して、レコードを取得して、DBからデタッチする

一方、持続的な接続では、接続し放し。
最初に接続すると、接続中に処理を何回もできるけど、
レコード書き込みなら、長時間、表がロックされてしまう

DBの説明書を参照
0470nobodyさん
垢版 |
2017/08/15(火) 14:39:02.94ID:+lmeczTb
最新トップYoutuberの年収は10億円、1億円の時代はもう古い
http://www.himatubushisp.com/entry/2017/05/10/224945
Youtuberヒカルが月収を明らかに!!おはよう朝日です出演
https://www.youtube.com/watch?v=RLZGrqQnnZc
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
https://www.youtube.com/watch?v=asF2wQ2xhjY&;t=61s
ユーチューバーの儲けのカラクリを徹底検証!
https://www.youtube.com/watch?v=FUSb4erJSXE&;t=504s
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
https://www.youtube.com/watch?v=Y7DAQ0RKilM&;t=326s
誰も言わないなら俺がYouTuberのギャラ相場を教えます
https://www.youtube.com/watch?v=E4q-vaQh2EQ&;t=118s

最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいい
手っ取り早く視聴数稼ぐには有名ユーチューバーへの物申す系動画がオススメ
しばたーやよりひとやkunやぽんちやモンスタージョンなどを真似すればいい
0471nobodyさん
垢版 |
2017/08/16(水) 21:33:07.28ID:???
>>469
ありがとう。返信が遅くなってごめんなさい。
その理屈は自分でもわかるんです。
ただそのような制御を rails でどうやるのかが分からず。

ひょっとして C# でやるところの using のようなことをやれば?とか思いついたところなのですが、環境がないので試せず。
申し訳ない。
0472nobodyさん
垢版 |
2017/08/17(木) 06:51:07.68ID:YH8iNOz5
>> 469
> レコード書き込みなら、長時間、表がロックされてしまう

嘘吐きは泥棒の始まり!
0473nobodyさん
垢版 |
2017/08/18(金) 07:14:52.13ID:???
エラーログが無いと分からないから、
まず、エラーログを取得して、そのエラーログで検索する

MySQL は無料だから、副問い合わせとか、複雑なSQL には対応していない。
複雑なSQL を書いたら、組み合わせ爆発(乗算)を起こす

A表の行数 × B表の行数

DB の基本は、実行計画を見て、何行にアクセスしたか、調べる。
インデックスを使っていなければ、総(線形)探索になる

DB は、ミックの本とか、読んでいないと無理
0474nobodyさん
垢版 |
2017/08/18(金) 12:23:18.44ID:midXpN+v
>>473
> MySQL は無料だから、副問い合わせとか、複雑なSQL には対応していない。

4系時代にクビになった後IT業界に戻れなかった元能無しSEか
ただの嘘吐き
0475465
垢版 |
2017/08/18(金) 19:05:06.83ID:???
>>473
自分へレス?

どうやらエラーログは収集できてないようです。
というかいきなり落ちてるっぽいのでなんとも。
また ActiveRecord による単純なレコードの新規作成(保存さえしていない)なので、複雑な SQL はないと思うんですが。
0476nobodyさん
垢版 |
2017/08/19(土) 13:36:45.69ID:???
1行ずつ、デバッグして、原因究明するとか。
単純に、1行だけ挿入するとか

出力の文字コードが、異なるとか?
パスワードなどのアクセス権限・実行権限・セキュリティとか?

エラーログが無いと、原因が無数に考えられるから、話にならない

DBをサービスとして起動していないから、
親プロセスの終了で、自動的に子プロセスも終了させられているとか

SSH などで、よく起こる。
端末(親プロセス)を終了したら、
端末から起動した、子プロセスもすべて終了してしまうとか

LPIC とか、OSの資格を持っていないと、システム構築運用はできない。
プログラマーは、OSの仕組みを知らないから

こういう知識を、コンピューターリテラシーと言う
0477nobodyさん
垢版 |
2017/08/19(土) 17:38:07.87ID:???
> こういう知識を、コンピューターリテラシーと言う

だからなに?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況