タグ

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

  • ゼロから始めるJavaScript生活 - Qiita

    (訳者注: これは、JavaScript Stack from Scratchを翻訳し、まとめて読めるように1ファイルにしたものです。元の翻訳と各種ファイルについては、日語訳forkリポジトリを参照してください。また、原文が活発に更新されているため、訳文も追従して更新されます。ご了承ください。) モダンJavaScriptスタックチュートリアル、ゼロから始めるJavaScript生活へようこそ。 ⚠️️ このチュートリアルのメジャーアップデート版を3月初旬に公開する予定です。ご期待下さい! より詳しく(英語). これはJavaScriptスタックを使い始めるための最短最速のガイドです。このガイドは一般的なプログラミングの知識とJavaScriptの基礎を前提としています。これら全てのツールを一緒につなぎ合わせることにフォーカスしており、各ツールについて可能な限りシンプルな例を提供します。

    ゼロから始めるJavaScript生活 - Qiita
  • MyBatis 使い方メモ - Qiita

    MyBatis とは SQLJava オブジェクトを紐付ける永続化フレームワーク。 以前は iBATIS という名前で Apache プロジェクトの1つとして開発されていた。 しかし、 2010年6月に Apache ソフトウェア財団での開発が中止され、現在は MyBatis という名前で開発されている。 SQL 文を完全にコントロールしたい場合に使いやすいらしい。 環境 OS Windows 7 64bit

    MyBatis 使い方メモ - Qiita
  • .io ドメインがおかしくなったので dig で調べてみた(2016/10/28) - Qiita

    更新履歴 思ったより参照量が多くてビビる。 情報源として使用されてるケースも見かけたため、更新履歴入れました。(多分今日だけでしょう) 2016-10-29 11:50 ns-a4.io が正しく次の権威サーバーを返してくれるの確認しました。障害復旧でいいんじゃないでしょうか。Android で dig 叩くツールあった。 03:08 http://dnsviz.net/d/io/WBOUpA/responses/ 直った? 2016-10-28 19:21 JST @rocca0504 さんの記事追記。 19:10 JST NXDOMAIN ステータスを勝手に返すのが問題の質だったので追記。 18:10 JST dig の +norecurse (+norec) について追記しました。(@fumiyas さんご指摘ありがとうございます。) 見た目悪くなりますが、必要な箇所には記載がある

    .io ドメインがおかしくなったので dig で調べてみた(2016/10/28) - Qiita
    gologo13
    gologo13 2016/10/28
  • MySQLの運用で役立つコマンド集 - Qiita

    SELECT TABLE_SCHEMA, round( sum( DATA_LENGTH ) / ( 1024 * 1024 ) , 2 ) AS DATA_SIZE, round( sum( INDEX_LENGTH ) / ( 1024 * 1024 ) , 2 ) AS INDEX_SIZE, round( round( sum( DATA_LENGTH ) + sum( INDEX_LENGTH ) ) / ( 1024 *1024 ) , 2 ) AS TOTAL_SIZE FROM information_schema.TABLES GROUP BY TABLE_SCHEMA ORDER BY TOTAL_SIZE DESC;

    MySQLの運用で役立つコマンド集 - Qiita
  • MySQLでToo many connectionsが出た時の対応 - Qiita

    MySQLでToo many connectionsが出た時にチェックする項目の整理 MySQL側で見る事 どのMySQLサーバーで起きているか分かっている時にはそのサーバーにログインして確認する。 設定値の確認 MySQLにログインしてmax connectionsの確認をする mysql> show variables like "%max_connections%"; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | max_connections | 1000 | +-----------------+-------+ 1 row in set (0.00 sec)

    MySQLでToo many connectionsが出た時の対応 - Qiita
    gologo13
    gologo13 2016/10/27
    show processlist;
  • Java Tomcatなどのアプリケーションサーバ+DBコネクションプール設定例 - Qiita

    はじめに 普段、複数の種類のDBでテストすることが多いので、 アプリケーションサーバ(当方の環境ではTomcat8.5.20)のcontext.xmlには 接続する可能性のあるすべてのDBの記述をずらっと書いています。 実装例 環境依存による違いは大いにあると思いますが、ご参考になれば...。 DB2はほとんど使わないので、実用に堪えうるかは?です。 <?xml version="1.0" encoding="UTF-8"?> <Context path="/コンテキストパス"> <!-- MySQL --> <Resource name="jdbc/MySQL" auth="Container" type="javax.sql.DataSource" maxTotal="100" maxIdle="20" maxWaitMillis="-1" username="ユーザ名" passwo

    Java Tomcatなどのアプリケーションサーバ+DBコネクションプール設定例 - Qiita
    gologo13
    gologo13 2016/10/27
    connection pool 関連の設定値がわかりやすい. maxActive, maxIdle, minIdle, initialSize
  • SpringのRestTemplateが便利すぎて鼻血でた - Qiita

    元々はC#、最近はNode.jsがコーディングの主流だったのですが、仕事で久々にJavaを使うことになりました。Javaは10年以上前にJava AppletからJNIでPCの周辺機器を操作するようなものを作って以来です。ServletとかTomcatとかStrutsとかとは無縁に生きてきました。 というわけで、久々にJavaを使って見たら、Spring 3.0~ にRestTemplateとかいう余りに素敵なクラスがあって驚いて鼻血が出たので、驚きを記事にしてみました。 RestTemplateの何がすごいかというと、Rest APIを呼び出すのに1行だけで済んでしまうという点です。これまでなら、HttpConnectionをOpenして、そこからBufferedWriterで書き出して、ResponseをBufferedReaderで読み込んで、みたいなことをしていましたが、そんな複雑

    SpringのRestTemplateが便利すぎて鼻血でた - Qiita
    gologo13
    gologo13 2016/10/26
    接続先をモック化できるのいいな “MockRestServiceServer”
  • MySQL で採番テーブル - Qiita

    LAST_INSERT_ID(expr) を使う方法 公式ドキュメントで紹介されている方法. MySQL 5.6 Reference Manual :: 12.14 Information Functions LAST_INSERT_ID(), LAST_INSERT_ID(expr) If expr is given as an argument to LAST_INSERT_ID(), the value of the argument is returned by the function and is remembered as the next value to be returned by LAST_INSERT_ID(). This can be used to simulate sequences: テーブル準備 採番テーブル create table `seq` ( `i

    MySQL で採番テーブル - Qiita
  • OpenAMによる認証環境の構築 - Qiita

    ここでは、OpenAM(旧SSO)を使用した認証システムの構築について紹介していきます。使用したのはOpenAM12.0.0ですが、OpenAM13.0.0(現在目下開発中)においても使えるはずです。尚、ここで前提とする認証方式はエージェント方式とします。(他に、リバースプロキシやトークンなどあります) 事前準備 簡単な用語の説明 OpenAMで重要な用語を私の理解で説明します。 認証サーバ:認証を実施するサーバ エージェント:認証を実施したいアプリと同じサーバなどに入れ、認証サーバとの連携をする存在 エージェントプロファイル:エージェントが認証サーバとの間でやり取りをすべきかの設定を記載したもの ポリシー:認証サーバがどのように認証すべきか(認証を実施するURL、認証時に認可するユーザやグループの判別など)を決めたもの ダウンロード 今回の設定に必要なソフトウェアをダウンロードします。

    OpenAMによる認証環境の構築 - Qiita
  • Finagleでサーバープログラミング - Qiita

    この記事はScala Advent Calendar 2014の20日目です。 よろしくお願いします。 はじめに latencyが短く、かつ大規模アクセスにも耐えられるサーバー環境の構築が必要になる場合があります。 例えば、広告系のシステムだと入札/応札するようなサーバーでは100msとか50msとか以内にレスポンスを返さなければいけません。 このようなサーバーを書くために、Scalaではいくつか選択肢があるかと思います。 自分の会社では、その中でFinagleを使ってAdServerを書いています。 この記事ではFinagleの簡単な紹介と、Finagleがサーバーをどのように動かしているのかについて書きたいと思います。 Finagleは、Twitterが開発したOSSのRPCシステムです(御存知の通り)。こちらにもあるように、RPCライブラリそのものではありません。 裏側にはNetty

    Finagleでサーバープログラミング - Qiita
    gologo13
    gologo13 2016/10/17
    パフォーマンス良いらしい
  • Java開発の性能改善! その1 jstatによるヒープ/GCの確認 - Qiita

    JavaのWeb開発の開発後期になると性能試験や負荷試験を実施することになると思いますが、 そのフェーズになると色々な問題が起こることが多い。 今まで起きた問題と調査・解決方法をいくつかの回に分けて紹介しようと思います。 まずはメモリリーク。 長時間サーバを起動して運用していたり、負荷試験を実施するとメモリリークを起こすことがある。 ガベージコレクションのおさらい Javaのヒープは大きくnew領域(young領域)とold領域に分かれます。 new領域には生成されてすぐのオブジェクトが格納されてマイナーGCにて未使用になった際に開放されます。 マイナーGCを何度も繰り返されても開放されない(長く参照されている)オブジェクトは old領域へと移動され、こちらはメジャーGC(フルGC)で開放されます。(メジャーGCはnewとperm領域も開放。) もう少し細かく説明すると・・・ new領域は

    Java開発の性能改善! その1 jstatによるヒープ/GCの確認 - Qiita
  • 意外と知らないIntelliJ IDEAのGit管理機能いろいろ(´-`) - Qiita

    新卒2年目の大久保です。(´-`) IntelliJ IDEA使い始めて結構経つんですが、未だに機能を活用しきれてないなと感じます。。(´-`) 特にGit周りに関しては知ってると便利な機能いろいろあるので、学習も兼ねていくつかピックアップしてまとめてみました。(´-`) 例で使用しているコードの言語はScalaです。 Annotate機能 現在表示されてるファイルの各行の最終更新日と更新者を確認 ファイルの行番号とかの横にGitのコミット情報を表示できます。 git blameとほぼ同じですね。 <やり方> 行番号が表示されてるとこを右クリック -> [Annotate]選択 コミットの差分を表示 Annotateによって表示された行を選択することで、そのコミットにおける各ファイルの差分を表示できます。 <やり方> 行番号が表示されてるとこを右クリック -> [Annotate]選択 -

    意外と知らないIntelliJ IDEAのGit管理機能いろいろ(´-`) - Qiita
  • ペアプログラミングに関する調査報告 - Qiita

    概要 ペアプログラミングとはプログラミングスタイルの一つで,「二人」のプログラマが共同で実装を行うことです.一人が実際のコードを記述し、もう一人はそれをチェックしながらナビゲートをします。この役割を随時交代しながら作業を進めます. 効果 ペアプログラミングを行うことで様々な効果が期待できます.ここではそのいくつかを紹介します. レビュー効果 ナビゲーターが常時,実装のチェックを行うため,コードレビューを常時行っているのと同等の効果が発生します.このことにより,高品質な製品の作成を期待できます. デバッグ時の効果 問題を他人に説明するだけで,その問題を解決したという経験を誰もがした事があると思います.ペアを組むことにより,その説明を行う機会が多くなり,早期に問題を解決できる効果があります. ペア間の学習 ツール使用のコツ,プログラミング言語,設計方法など様々な知識,ノウハウがパートナー間で共

    ペアプログラミングに関する調査報告 - Qiita
    gologo13
    gologo13 2016/10/13
  • 全く新しい銀行を1から作るために必要な技術 (Monzo公式ブログより) - Qiita

    あらまし 今年(2016年)8月10日、イギリスで全く新しい銀行が誕生しました。 イギリスの金融当局、PRA が、「Monzo Bank Ltd」を制限付きで認可。2015年2月に設立以来、別のカード会社と提携してプリペイドカードを発行し、その利用状況をスマホ等で即時に確認できるサービスを限られた顧客に提供してきましたが、これから当局との調整を進め、2017年前半を目処に銀行としての業務を開始すべく準備を進めるとのことです。 技術要素 過去にUberの競合であるHailoや、イギリスのオンラインカラオケサービス等でエンジニアを務め、現在 Monzo の Head of Engineering である Oliver Beattie氏が、公式ブログで「Building a Modern Bank Backend」と題し、技術要素についての説明をしているので、その内容を簡単に紹介します。 マイク

    全く新しい銀行を1から作るために必要な技術 (Monzo公式ブログより) - Qiita
  • 技術的負債とどうやって戦うか - Qiita

    プロジェクトが進行するにつれて増える『負債』 長いプロジェクトに携わっていると、技術的負債をいつ返すのかが課題になってきます。 リファクタリングはいつの時点でやるのか、これは長いプロジェクトを運用していく上で問題になっていきますが、今回は負債の種類を整理し、それぞれどう対応をしていけばよいかを考えていきたいと思います。 私達の開発では常に時間が足りない 最近読んだ、「アジャイルサムライ」というには下記のようなことが書いてありました。 (開発における)3つの真実 プロジェクト開始時点にすべての要求をあつめることは出来ない 集めたところで要求はどれも必ずと言っていいほど変わる やるべきことはいつだって与えられた時間と資金よりも多い 以上のことからわかるように、私達の開発には時間が無いということが常だということがわかります。実際、技術的負債が多いプロジェクトほどこの傾向が強いのではないでしょう

    技術的負債とどうやって戦うか - Qiita
  • JavaでのDBのテストデータ作成はDbSetupが楽 - Qiita

    Javaでのデータベースのテストデータ作成にはDBUnitがよく使われますが、自分はDbSetupをオススメします。 DbSetup なぜDBUnitがイマイチなのか 自分も最初はDBUnitを使ってたのですが、以下の理由からしっくり来ませんでした。 DBを使ったテストでは少量のデータを使うことが多い ホワイトボックステストで大量のデータを使うことはほとんどなく、単一または複数のテーブルに対して、少量のデータを用意するケースがほとんどです。なので、テストごとにファイル(XML or Excel)を用意するのは面倒です。 テストコードとデータが分離している テストデータを外部ファイルに保存するため、テストコードとテストデータが分離してしまっています。そのため、何をテストしているのかが分かり辛いです。 そこでDbSetup そこで見つけたのがDbSetupです。DbSetupはテストデータをJ

    JavaでのDBのテストデータ作成はDbSetupが楽 - Qiita
  • Nianticの求人から推測する『Pokémon GO(ポケモンGO)』のサーバ構成 - Qiita

    1ワールドで済ますというチャレンジ Nianticの求人を見ていて、凄く驚いたのは、「Software Engineer - Server Infrastructure」での次の項目。 all on a single, coherent world-wide instance shared by millions of users. 対訳 全ての(アクション)は、数百万のユーザーに共有された単一の一貫した(サーバ群で行われる) つまり、ポケモンGOは1ワールドで構成されている。MMOのサーバを作ったことがある人なら5それがどんなに大変かピンとくるだろう。特に、ポケモンGOの様に一日に数百万人とかが遊ぶゲームで、1ワールドでゲーム世界を構築するのは、結構大変だ。6 MMOで1ワールドがなぜ大変か(データストレージとの戦い) MMOの様なオンラインゲームで、1ワールドがなぜ大変かを図示する。

    Nianticの求人から推測する『Pokémon GO(ポケモンGO)』のサーバ構成 - Qiita
  • マイクロサービスアーキテクチャにおけるAPIコールの仕方とHTMLレンダリング - Qiita

    先日、マイクロサービスの呼び出し方として、オーケストレーションとコレオグラフィについて書きましたが、同じく4章では、どうHTMLを組み立てるかという問題が提起されています。 ここもやや難解なので、咀嚼を試みます。 課題設定 次のようなECサイトを考えることにします。そして、4つのマイクロサービスを合成して構成します。 商品カタログサービス ショッピングカートサービス ショップサービス リコメンドサービス API合成 無垢な気持ちで設計すると、各々のマイクロサービスがWeb APIのインタフェースをもち、XMLやJSONを返して、ECサイト側で、テンプレートエンジンなどを用いて、HTMLをレンダリングするという方式になるかと思います。 そして、この形式でマイクロサービスを利用するサイト(アプリケーション)が増えていくと次の図のようになります。 これには、次の3つの欠点があるとされています。

    マイクロサービスアーキテクチャにおけるAPIコールの仕方とHTMLレンダリング - Qiita
    gologo13
    gologo13 2016/09/20
    UI部品合成とBFF
  • SPAでのセッション管理とセキュリティ - Qiita

    普通にcookie使えばいいと思います。 loginリクエストもajaxで投げればcookie返ってくるので、何も考えることないかなと。 Cookie 動作イメージは以下の形です。 == サーバ → UA == Set-Cookie: SID=31d4d96e407aad42; Path=/; Domain=example.com == UA → サーバ == Cookie: SID=31d4d96e407aad42 (from https://triple-underscore.github.io/RFC6265-ja.html) ブラウザの状態管理のためのもの。 もちろん主要ブラウザはどこも付いてます。 railsでもplayでもとりあえずこれでセッション管理されています。 secure属性があると、httpsのときだけやりとりされます。 HttpOnly属性があると、jsから読

    SPAでのセッション管理とセキュリティ - Qiita
  • Android Studioの超高速コーディングを支える技術(テクニック) - Qiita

    追記(宣伝): 今年の夏から大阪でフルリモートなフリーランスAndroid/iOS/Webエンジニアをやっています。ただいま週1-2または請負のお仕事お待ちしております・・! 画面見た人から(Enterやらショートカットやら連打で)何やってんだかわからないって言われることがたまにあるので、Android Studioでどうやってコーディングしているのかを書きました。 単なるショートカット集ではなく、あえてエラーのある状態を作るなどのテクニック集です。 なおMacかつAndroid Studio標準のキーバインドを前提としているので違う方は読み替えてください。(もちろんIntelliJでも同じことができるはずです・・!) 原則 考えるな、感じろ。: Alt+Enterや補完キーなどを押した次の状態を頭の中に思い浮かべながらに対して反射的に操作すると、超高速コーディングできる エラーだろうが汚

    Android Studioの超高速コーディングを支える技術(テクニック) - Qiita