タグ

ブックマーク / qiita.com (396)

  • 【AWS】インフラエンジニアでなくてもできるアクセス負荷対策 - Qiita

    こんにちわ、スタートアップで働くサーバーサイドエンジニアです。 メインはサーバーサイドですが、スタートアップなのでインフラやフロントについても担当させて頂く機会が多いです。 そこで今回はTV放送に耐えられるように行った負荷対策とその結果について書いていこうと思います。 AWSなどのクラウドサービスを使えば、インフラ専門の方でなくても随分な対策ができてしまいます。 ぜひサーバーサイドメインでインフラわからないよって方の参考になればと思います! ①アクセス数の予測 放送される番組の視聴率や放送範囲からアクセス数を予測しました。 (視聴がわからない場合は番組担当者の方に直接聞いたり週間高世帯視聴率番組10 - ビデオリサーチ、テレビ視聴率ランキング | インターネットTVガイドが参考になりました) 計算内容はこちら(参考: カウル Tech Blog) # 総アクセス数を求める公式 総アクセス数

    【AWS】インフラエンジニアでなくてもできるアクセス負荷対策 - Qiita
  • Goで世界一シンプルなCUIライブラリを作りました - Qiita

    こんにちは。今日もいいターミナル日和ですね。 今回はGo製の新たなCUIライブラリ goban を作ったので、その紹介と簡単な使い方を説明します。 (追記)罫線と文字幅について 日語環境では罫線が全角幅で表示されてしまい、綺麗に出力されない問題があります。その際は、以下の一行をMainの前に挿入してください。 runewidth.DefaultCondition = &runewidth.Condition{EastAsianWidth: false} ただし、これは ambiguous width に分類される文字すべてを半角幅で表示してしまうため、記号などを用いたときに別の問題が発生する場合があります。注意して使用してください。 今後、CJK環境では罫線を諦めてASCIIでボックスを表示する実装を入れる予定です。 CUIライブラリについて ターミナルで動くグラフィカルなアプリを作るた

    Goで世界一シンプルなCUIライブラリを作りました - Qiita
  • なるべく切れない回線のつくりかた(物理) - Qiita

    ◆なるべく切れない回線とはなんですか? 「落ちないシステムなんてない」 「切れない回線なんてない」 エンジニアの方なら理解してくれると思います。 しかし、理解はしつつも回線断を体験したことがある人はあまりいないのではないでしょうか。 じつはその「あまり」中にあなたが含まれないのは、わりと運が良いだけなのかもしれません。 今日もたくさんの回線が切れています。今もどこかで切れています。月額5000円のベストエフォート回線でも、月額1000万円の10G専有回線でも、切れるときはいつでも切れます。明日もたくさん切れるでしょう。明後日も。来年も。10年後も。古来電信回線から今後5Gになっても、人類が通信をし続ける限りは切れ続けます。その時に切れるのは、もしかするとあなたに関係があるネットワークかもしれませんし、運良くそんな事態には遭遇しないのかもしれませんし、気づかないうちに復旧しているかもしれませ

    なるべく切れない回線のつくりかた(物理) - Qiita
  • Mac用 Apple英字配列(US)キーボードにおける日本語入力切替のおすすめ:Commandキーのみで実現 - Qiita

    私は数年間これを使って、快適な日本語入力の切り替えを行っています!この切り替え方法による影響など、詳しい情報をまとめました。 設定の所要時間は、ダウンロード&インストール後、1分〜3分程度です。 (他にもシチュエーション別の対策方法などを記載しているため記事が長くなっています) ※こちらはMacユーザー向けの記事です。→Windows向けの記事はこちら 2019/12/30 更新:全体的に可読性を向上、入力ソース切り替えのショートカット案を追加、コメント頂いたフィードバックを文に反映 目次 概要 設定手順 Apple US Keyboard(英字配列)を使うメリット・デメリット おまけ 概要 英数や かなキーがないUSキーボードで、左Commandを英数キー、右Commandをかなキーに割り当てるように設定し、日本語入力の切り替えを行う 元々のCommandの機能は維持され、コピー(Co

    Mac用 Apple英字配列(US)キーボードにおける日本語入力切替のおすすめ:Commandキーのみで実現 - Qiita
  • 出来る限り短く説明するReactJS入門 - Qiita

    VTeacher 所属の Masaki Suzuki です。 ※各項目をできるだけ3行以内にまとめています デザイナーさんやフロントのエンジニアさん向けのReact.js(リアクトジェーエス)入門です。 「最近、『リアクト』と聞くけど、つまり何?」ってひとが対象です。 React.jsとは React.jsはUIのパーツ(構成部品)を作るためのライブラリです。 FacebookがOSSとして公開しています。 初回投稿日:2015年06月21日 この投稿はReactが話題になり始めた頃(6年前のv0.1の頃)、整理した記事です。 最新情報はこちら React Server Components 2021年からReactを始めるなら React Server Components 一択ではないか? https://zenn.dev/rgbkids/articles/e58ef9b947b199

    出来る限り短く説明するReactJS入門 - Qiita
  • リポジトリの言語割合にドキュメントを含めないようにする方法 - Qiita

    GitHubには各リポジトリがどういった言語で構成されているのかを表示する機能がある(↓こういうの) デフォルトでGitHubがいい感じにしてくれるが、標準から外れたディレクトリ構成になっていると、意図しない感じになったりすることがある。具体的には、標準とは違う場所に 依存ライブラリが直接置かれている ドキュメントが書かれている と言語の割合が狂う。例えば、↑の画像で引用したリポジトリではJavaScriptのモジュールを作っているが、標準とは少し違う場所にドキュメントを置いている都合で、意図せずCSSHTMLが合算されてしまっている。気にしなければいいという話ではあるのだが、どうしても気持ち悪い場合はリポジトリルートに .gitattributes というファイルを用意して みたいにすることで解決することができる。こうすると special-vendored-path に入っているファ

    リポジトリの言語割合にドキュメントを含めないようにする方法 - Qiita
  • 文字で、文字や絵を書く技術 - Qiita

    要約 あ…ありのまま 今 思った事を話すぜ! 「文字が文字で作れたら面白いよね?」 何を言っているのか わからねーと思うが、 おれも 何を言っているのか分からない。 兎に角、下記の作例集を見れば何がしたいのかが分かる。まずは見てね Colaboratoryで、前提一切不要&ブラウザだけですぐ動かせるよ おれは 奴の前で文字を書いていたと思ったら いつのまにか絵を書いていた。と思ったらやっぱり文字を書いていた。 頭がどうにかなりそうだった 作例集① 殺伐としたウニ これがホントの「エビカニ、クス(笑)」 殺伐としたスレに鳥取県が!! 島根県 ( ※「矛盾塊」と呼ばれているらしい) 瀧「リューク、目の取引だ」 アイドルの方の三葉が死ぬっ! EVA こんなとき、どんな顔をしたらいいかわからないの ごめんなさい。作例集を見ても 「何がしたいのか」は分からなかったかもしれない。 「何が出来るようにな

    文字で、文字や絵を書く技術 - Qiita
  • JavaScript (Electron) を使ってアプリの見栄えを整える - Qiita

    Electronを使って見栄えを整えてみる ElectronはJavaScriptデスクトップアプリケーションが作れるツールです。 前回「30分で出来る、JavaScript (Electron) でデスクトップアプリを作って配布するまで」では簡単なアプリを作って配布するところまでやりました。 あとはいつも通りの JS + HTML + CSS でガリガリ書いていけばいいのですが、まずは見た目から入ろうということで、もう少しアプリっぽい見栄えにしてみましょう。 ちなみに、Macではいろいろ動作を確認しましたが、Windowsは知りません。 大体同じように動くはずですが、もしダメだったらWindows版の記述を教えて頂けると助かります。 基設定は browser-window APIで browser-windowはアプリのウィンドウを表示するためのAPIです。 例えば、以下は単なるin

    JavaScript (Electron) を使ってアプリの見栄えを整える - Qiita
  • Electronの手習い〜Electron環境からパッケージ化まで〜 - Qiita

    Electronってどういうことができるのか全く知らない状態からスタートです。 Electronとは?についての参考資料 - Electron 家サイト - HTML5でクロスプラットフォームなデスクトップアプリを開発できる「Electron」とは - Electron 1.0でデスクトップアプリ開発超入門――動作の仕組み、基的な使い方、セキュリティの懸念点 - 家サイトを翻訳してくれているページ発見 助かる。。 ★ 家サイトからのデモファイルDL時に混乱したこと http://electron.atom.io/#get-started に「Downlode for mac」があったのでそれをDLして中身を確認しようとしました。 しかし、これは「Electronで開発したアプリでは、どのようなことが行えるか」がわかるappであり、期待しているソースファイルはありませんでした。 自分

    Electronの手習い〜Electron環境からパッケージ化まで〜 - Qiita
    jiroron666
    jiroron666 2019/07/05
    Electronで実行可能ファイルを作成する方法が書かれている
  • NiGui入門(v0.1.0) - Qiita

    初投稿。 注 : ・この記事は不完全であり、まだ追加の必要な部分も多くあります。 ・非公式です。 ・これはあくまで使い方のほんの一部の基を日語で表したものです。 もっと多くの機能を利用する場合は、GitHub等に公開されているexampleをみたり、ソースコードを見るなどしてご自身で習得していただきたいです。 [ 0 ] NiGuiとは? Nim用に作られたGUIライブラリです。 (GitHub : https://github.com/trustable-code/NiGui ) 利点 とにかく軽量 Windows用はWin32APIMacOSLinux用はGTK+3上で動作します。 それだけでもかなり軽量ですが、当然使用言語はNimですから...もはや軽量性はほぼ文句なしです。 (一方nimxはSDLベースなのでちょっとそこらへん心配です。) クロスプラットフォーム 現在実装が

    NiGui入門(v0.1.0) - Qiita
    jiroron666
    jiroron666 2019/07/05
    日本語も使えていい感じ。インストールもすごく簡単
  • はじめてのvimscriptとvimプラグインの作成

    Help us understand the problem. What is going on with this article?

    はじめてのvimscriptとvimプラグインの作成
  • Dockerコンテナのログは標準オプションでローテートできる - Qiita

    Help us understand the problem. What is going on with this article?

    Dockerコンテナのログは標準オプションでローテートできる - Qiita
  • docker-compose + リバースプロキシ + ロードバランシングの環境構築手順 - Qiita

    概要 docker-composeで構築した環境に、nginxのコンテナを作成し、リバースプロキシとロードバランシング(scaleを使います)の機能を持たせた手順。 下記の記事に、リバースプロキシとロードバランシングの機能を加えたものです。 [関連記事] docker-compose on CentOS7構築手順メモ CentOS 7.1 docker-engine (Docker 1.12.3) docker-compose 1.8.1 docker-engine, docker-composeのインストール 下記を参照 docker(docker-engine), docker-composeのインストール コンテナ構成 コンテナ名 役割 リンク先 イメージ元

    docker-compose + リバースプロキシ + ロードバランシングの環境構築手順 - Qiita
    jiroron666
    jiroron666 2019/06/26
    scaleなんて機能があったのか
  • ブラウザのキャッシュコントロールを正しく理解する - Qiita [キータ]

    ①ブラウザに一切、キャッシュさせたくない場合 サーバからクライアントへのHTTP応答ヘッダ → Cache-Control "no-cache" アクセス毎に内容が変わったり、サーバにアクセスしてもらわないと困るようなコンコンテンツの場合です。 スクリプト言語等で生成する動的コンテンツは、このようにした方が安全です。 例えば対象コンテンツが画像である場合、ブラウザで同じ画像のURLが含まれたHTMLを開いた場合は、 もちろんローカルにキャッシュがないので、サーバへ問い合わせを行う 条件つきリクエスト(If-Modified-Since、If-None-Match)もサーバへ送ってこない ②ブラウザにキャッシュさせるけど、変更ないか都度確認するようにしたい サーバからクライアントへのHTTP応答ヘッダ → Cache-Control "max-age=0" → Expires "Mon, 2

    ブラウザのキャッシュコントロールを正しく理解する - Qiita [キータ]
  • 静的リソース(HTML,JS,CSS,画像)のブラウザキャッシュを制御 - Qiita

    前回のエントリ(ブラウザのキャッシュコントロールを正しく理解する)でブラウザ側のキャッシュ制御について説明しました。 ただ動的スクリプトなら、次の例のようにHTTPレスポンスヘッダを操作すればいいのですが、 <?php header('Content-Type: text/plain; charset=UTF-8'); header('Cache-Control: max-age=0'); echo "Hello World!"; ?> スクリプトを介さない静的リソース(HTMLファイル、JSファイル、CSSファイル、画像ファイルなど)はどうやってHTTPレスポンスを操作すればいいかというと、もしApacheを利用している場合は mod_header と mod_rewrite を利用して次のように簡単に出来ます! 設定例 想定ケースとして、次のようにブラウザ側のキャッシュを制御したいと仮

    静的リソース(HTML,JS,CSS,画像)のブラウザキャッシュを制御 - Qiita
  • Dockerサービスの簡単リバースプロキシ - Qiita

    はじめに Docker使ってますか?同一ホストに簡単に複数のアプリケーション環境を起動することができて便利ですよね。 しかし、複数のコンテナを起動した際に悩ましいのがポートマッピング問題・・・。 ホスト側の空きポートを明示的に指定してあげる必要がある ブラウザからアプリケーションへのアクセスは、可能な限り80番を使いたい これらの問題を、nginxで(動的に)リバースプロキシを設定し、任意のサブドメイン等からコンテナにアクセス可能にさせてくれるDockerイメージが jwilder/nginx-proxy です。 アプリケーションのポートマッピング例 以下のような、docker-compose.ymlファイルの場合 version: '3' services: web: image: web ports: - "80:80" web2: image: web2 ports: - "8080

    Dockerサービスの簡単リバースプロキシ - Qiita
  • 何もしない組み込みコマンド ":" (コロン)の使い道

    Bash でシェルスクリプトを勉強していくと出会うのが : (コロン)という名前の組み込みコマンド。このコマンドは何もしないコマンドです。 こんなコマンドの存在は不思議だなと思う反面、C言語にも void という型があったり(関数のような形で存在するのは JavaScript とかですね)、LaTeX にも \relax があったり、何もしない命令というものは機械語の NOP からある普通のものです。 この Bash の : の使い道についてまとめてみました。 何か書かなければならないところに仮置きする 例えば「ここに制御構造を置くんだけど、この節に入るものは後で書くんだけどな〜」といった場合、制御構造の節の中に何も書かないと Bash は構文エラーとなります。 #!/bin/bash arg="$1" if [ -z "$arg" ] ; then echo "デフォルトモード開始" e

    何もしない組み込みコマンド ":" (コロン)の使い道
  • わざわざ学ばなくてもいい言語ランキング1位の「Elm」をわざわざ学んでみる - Qiita

    平日ワイ ワイ「優秀な若者たちが高速で仕事を終わらせてもうたから、ワイのやる事なくなってもうたで」 ワイ「弊社の10%ルール1を使って新しい言語のお勉強でもしてみよか」 ワイ「こないだ何かのランキングでナンバーワンやったあの言語、なんやったっけな」 ワイ「・・・せや、Elmや」 ワイ「純粋関数型言語いうやつやな」 ワイ「ちょっとそのElmちゃんでも勉強してみよか」 とりあえずググる ワイ「Elm、日語・・・検索っと」 ワイ「おお、なんかとっても親切そうなサイトが見つかったで」 ワイ「・・・なるほどな〜」 ワイ「ElmいうんはJavaScriptにコンパイルできる言語なんやな」 ワイ「フロントエンドなワイにピッタリやないか」 ワイ「しかも、環境構築とかせんでも」 ワイ「Ellieいうサイト上で動かしてみることも出来るみたいや」 とりあえずHello World ワイ「まずElmではどうやっ

    わざわざ学ばなくてもいい言語ランキング1位の「Elm」をわざわざ学んでみる - Qiita
  • サーバサイドで複数Web APIを呼び出すときのデザインパターン - Qiita

    最近はエンタープライズのシステムでも、Web APIによるシステム間連携が増えてきました。そうしたときに、1リクエストで複数の連携先APIを実行し、結果をクライアントに返すということがままあります。 どう作りましょうか、という問題です。 前提として、サーバサイドでHTMLレンダリングせずに、Web APIの中継することとします。中継する意義は、流量やキャッシュをサーバサイドでコントロールできるところにあります。 クライアントから直接連携先のAPIにアクセスする設計にすると、リロードボタン連打などのDDoS攻撃うけたときに、自分たちでは対処できず、連携先に迷惑をかけてしまいますよね。特に「課金の関係などで直接APIをアクセスしなきゃいけないんだ」、とかでなければ、中継するように設計しておいた方がベターです。 Web APIの呼び出し 業務システムで使う場合は、ちゃんとリクエスト、レスポンスが

    サーバサイドで複数Web APIを呼び出すときのデザインパターン - Qiita
  • nim文字列操作(PEG) - Qiita

    概要 nimのPEG操作関連処理をコツコツと書いていく予定 nimでは、正規表現ライブラリ(re)もありますが、PEG(pegs)も標準で入っています。 正規表現ライブラリはimpure(OS環境依存ってこと?)、PEGはpureライブラリ(nimで実装)となっているので、PEGを使ったほうがいいのかなーという印象です。 以下メモ シンプルなマッチング import strutils,pegs,unicode block: echo "1" =~ peg"\d" echo "123" =~ peg"\d+" echo "123ABC" =~ peg"\d+\w+" echo "123_ABC" =~ peg"\d+_\w+"

    nim文字列操作(PEG) - Qiita