AWSでLoadBalancerを設定する。
AWSでLoadBalancerを設定してみた。
悩んだ、さてどうやるのか、、
Application Load Balancerを使用してみました。
何個か関門がありました。
ヘルスチェック関門
Instanceのヘルスチェックがいつまでたっても、
OutOfService
のままで、
InService
にならない。
どうやら、Laravelの設定でリダイレクトしていたのがどうやら原因ぽい。
ヘルスチェック専門のrouteを作成して、ここを抜ける。
Basic認証 関門
認証を通した後に 何度かリロードして通過した、なんだこれは、、
独自ドメイン関門
この記事が大変に参考になりました。 Route 53を使うのがいいらしい。
営業でも簡単!Route 53の基本設定 | サーバーワークス エンジニアブログ
alias機能でLBで取得したDomain Nameを設定してやります。
そして、記事のとうりネームサーバー情報を更新して完了です。
もともとは、お名前.comで設定していたので そのネームサーバーを変更します。
digで確認する
dig <host name > ns
意外に時間がかかって、7時間ほどで確認できるようになった、 もっと早くDNSを浸透させる方法はあるものだろうか、、
ここに関しては、最初からAWSでDNSを設定するのがどうも吉。
しかし、httpsの設定もCertificate Managerから無料でできたり、便利な事この上ない。
あとは、がんがんアプリを作っていけばいいですね。
Cron Setting
Cronの設定例、 いつも、ググっているのでリスト化していく。
View LifeCycle
View LifeCycle一覧にしてみた。
Swift キーボードを自動的に表示する方法
アプリで自動的にキーボードを表示したい時の処理、探してもなかなか見つからなかったのでメモしておく
自動的に表示する場合
private var toolbar: UIToolbar! override func viewDidLoad() { self.textView.becomeFirstResponder() }
自動的に閉じる場合
self.textView.resignFirstResponder()
becomeFirstResponderはこれ意外に色々と活用方法がありそうだ。
Swift Tip String型のクラス名からクラスを生成する。
String型のクラス名からクラスを生成するサンプル、 NSStringFromClassを使って、クラス名を一度取得し、それをNSClassFromStringで変換をかけた、 どうも、ターゲット名が含まれていないと、NSClassFromStringで変換をかける時にエラーが発生してしまった。
func controller() -> UIViewController { let className = NSStringFromClass(User.self) let aClass = NSClassFromString(className) as! UIViewController.Type let viewController = aClass.init() return viewController }
おつもお世話になっているstackoverflowにあった。 stackoverflow.com
Top 100 Best Blogs for iOS Developers
Top 100 Best Blogs for iOS Developers IOSのベストブロガー100人が列挙されているサイト、そのなかでも面白そうなブログを探してみた。
App Coda
www.appcoda.com チュートリアルが詳しくかつわかりやすく取り上げられている、ここを見えているだけでかなり詳しくなれそう。
realm
realm.io おなじみのrealm、ビデオ付きでチュートリアルが解説されているのはわかりやすく良い。
raywenderlich
www.raywenderlich.com マニアックなチュートリアルが掲載されている、貴重な情報が得られそう。
ios-blog
www.ios-blog.co.uk チュートリアルが、詳しくかつわかりやすく取り上げられている。内容もわかりやすい。
随時更新中
Swift UITableViewの無限スクロールを作ってみる。
UITableViewの無限スクロールを実装するサンプル
func scrollViewDidScroll(scrollView: UIScrollView) { if(self.tableView.contentOffset.y >= (self.tableView.contentSize.height - self.tableView.bounds.size.height)) { print("run action!") } }