タグ

ブックマーク / codezine.jp (21)

  • 秒間28万リクエストをさばく! 「グラブル」を支えるサーバーサイドの技術【デブサミ2020】

    2020年3月10日に6周年を迎えた「グランブルーファンタジー」。開発会社である株式会社Cygamesの開発チームは、サービス開始以降、日々増加するユーザー数やリクエスト数、そして次々と公開される新施策を支えてきた。そして、より快適なユーザー体験を提供できるよう、最適技術の導入や運用改善に努めているという。同社サーバーサイドエンジニアの小松美穂氏、大橋庸氏が登壇し、秒間28万リクエストのサーバー負荷のかかるイベント「決戦!星の古戦場」の実例を紹介しながら、運用体制や技術的改善の具体的な方策について紹介した。 古戦場とともに成長してきた「グラブル」のシステム管理 「グラブル」の愛称で親しまれ、多くのファンを持つ「グランブルーファンタジー」。いわゆる「王道スマホ系RPG」として、2014年3月のローンチ以来、累計登録者数は2500万人を超え、成長し続けてきた。頻繁にアップデートが行われ、仲間の

    秒間28万リクエストをさばく! 「グラブル」を支えるサーバーサイドの技術【デブサミ2020】
    Malan
    Malan 2024/04/11
  • 新世代Vim「Neovim」を多機能IDEに変身させる「AstroNvim 3.0.3」が登場

    「AstroNvim」の開発チームは、最新バージョンとなる「バージョン3.0.3」を3月11日(現地時間)に公開した。AstroNvimは、「Vim」からフォークした新世代エディタ「Neovim」を多機能統合開発環境に変身させる各種設定ファイルとプラグインをまとめたパッケージ。GNU General Public License v3.0で公開しているオープンソース・ソフトウェア。 AstroNvimは、ウィンドウ左側にディレクトリ・ツリーを表示するファイル・エクスプローラーや、コード補完機能、Gitクライアント、ウィンドウ内に表示するターミナル、言語サーバー プロトコル(LSP:Language Server Protocol)クライアントなどの機能をNeovimにまとめて提供するパッケージ。AstroNvimを利用することで、Neovimを多機能統合開発環境に変身させることができる。

    新世代Vim「Neovim」を多機能IDEに変身させる「AstroNvim 3.0.3」が登場
    Malan
    Malan 2023/03/19
  • TypeScriptで開発した高速なインメモリ全文検索エンジン「Lyra 0.0.1」が登場

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    TypeScriptで開発した高速なインメモリ全文検索エンジン「Lyra 0.0.1」が登場
    Malan
    Malan 2022/08/04
  • JavaScript実行環境「Node.js 18.0.0」がリリース

    今回の「Node.js 18」リリースにともない、「Node.js 18」が前バージョンである「Node.js 17」に代わって以降6か月間のCurrentリリースラインとなり、2022年10月に長期サポート(LTS)に昇格する。長期リリースに昇格した場合、コードネームは“Hydrogen”となり、2025年4月までサポートされる。 「Node.js 18」では、実験的ながらグローバルフェッチAPIがデフォルトで利用可能になったほか、結果をTAP形式で報告するJavaScriptテストの作成を容易にするnode:testモジュールが実験的な機能として追加された。 さらに、LinuxmacOSAIX用のビルド済みバイナリがアップグレードされるとともに、configureスクリプトの--node-snapshot-mainフラグによる、カスタムV8起動スナップショットを使用したNode.j

    JavaScript実行環境「Node.js 18.0.0」がリリース
    Malan
    Malan 2022/04/28
  • JavaScript/TypeScriptランタイム「Deno 1.21」がリリース

    Deno 1.21」では、デフォルトで型チェックを無効にするパスであるdeno runにてDenoを開始し、型チェックは新たなサブコマンドであるdeno checkを使用して明示的に実行することが決定されたことを受けて、将来デフォルトをno-typecheck-by-defaultモードに切り替えるべく、サブコマンドdeno checkと環境変数DENO_FUTURE_CHECK=1が追加されている。なお、今後数か月以内のリリースにて、デフォルトで型チェックが無効になる。 さらに、setTimeout、setInterval、またはブラウザへのイベントハンドラのような非同期イベントループタスクでキャッチされない例外に対するDenoのエラー処理に対応すべく、グローバルイベントとしてerrorを追加し、event.preventDefault()によってイベントがキャッチされなかった場合に、

    JavaScript/TypeScriptランタイム「Deno 1.21」がリリース
    Malan
    Malan 2022/04/26
  • 高速で開発者体験も抜群!JavaScriptフレームワークの新星「Svelte」とは何か?

    はじめに 記事では、ユーザーインターフェイスを構築するためのJavaScriptフレームワークのひとつ「Svelte(スベルト)」についてご紹介します。 Webフロントエンドの領域は年々大きくなっており、読者の皆さまの中でもReactVueといったフレームワークを使ったことがある方が多いものと思います。もしかしたら、Svelteの名前もどこかでご覧になり、気になっている方もいるかもしれません。 Svelteは、そのアプローチの新しさから注目されはじめています。 JavaScript のライブラリに関する大規模調査「State of JS 2020」で「最も愛されているWebフレームワーク」「もっとも開発者の満足度の高いフレームワーク」に選ばれたことでも話題となりました。 そこで記事では、ReactVueに少しでも触れたことがある方を想定して、それらと比較する形で、Svelteの特徴

    高速で開発者体験も抜群!JavaScriptフレームワークの新星「Svelte」とは何か?
    Malan
    Malan 2021/12/29
  • JavaScript解析ツール「ESLint 8.0.0」がリリース

    「ESLint 8.0.0」では、デフォルトのパーサとすべてのコアルールが次期ES2022構文をサポートし、クラスパブリックインスタンスフィールドとプライベートインスタンスフィールド、クラスパブリック静的フィールドとプライベート静的フィールド、クラスプライベートインスタンスメソッドとアクセサ、クラスプライベート静的メソッドとアクセサ、正規表現マッチインデックス、トップレベルのawaitに対応している。 --fixと--report-unused-disable-directivesが一緒に使用されている場合、Autofixで未使用の無効化ディレクティブを削除できるようになったほか、class-methods-use-thisルールにenforceForClassFieldsオプションが追加され、max-classes-per-fileルールにignoreExpressionsオプションが追

    JavaScript解析ツール「ESLint 8.0.0」がリリース
    Malan
    Malan 2021/10/18
  • オープンソースのデスクトップ環境「GNOME 41」がリリース

    「GNOME 41」では、パワーモードが改善され、システムステータスメニューからすばやく変更できるようになったほか、パワーセーバーモードが強化されアクティブなときに画面がより速く暗くなり、バッテリ残量が少なくなるとパワーセーバーが自動でオンになる。 付属ソフトウェアは、これまで以上に見た目も機能も向上し、探索ビューでは各アプリの説明が表示されるようになり、新たに追加されたカテゴリのセットによって、利用可能なアプリの閲覧と探索に役立つ。また、詳細ページではスクリーンショットが大きくなるなど、各アプリケーションの概要がわかりやすくなった。 ほかにも、マルチタスク設定パネルではアクティビティホットコーナーやActive Screen Edgesを無効にでき、すべてのディスプレイにワークスペースを表示可能になるなどの変更が加えられるとともに、新たなリモートデスクトップクライアント「Connecti

    オープンソースのデスクトップ環境「GNOME 41」がリリース
    Malan
    Malan 2021/09/28
  • TypeScriptのWebページがリニューアル

    同社は、TypeScriptの文書化のための新たな基盤を提供し、情報アーキテクチャを再編成して、それらをまとめ直すために、2020年8月にTypeScriptのWeb全体の再設計と再構築を行っている。また、2021年3月にはTypeScriptハンドブックの第2版が作成された。 今回公開された、新しいTypeScriptのWebページは、これまでページ上部に明確なアクション呼び出しがなく、すべての視覚的な重み付けが同じだったため、テキストがスキャンできないといった問題点が解消され、ページ上のテキストを減らし、各セクションの重要な情報を太字にするとともに、使用する色数の制限、ページ途中におけるジャンプオフポイントの作成、フッタのコンテンツをページ末尾にあるジャンプオフポイントに置き換えるなど、数多くのデザイン変更が行われている。 ほかにも、JavaScript関数からTypeScript関数

    TypeScriptのWebページがリニューアル
    Malan
    Malan 2021/08/26
  • 「Docker Desktop 3.6」がリリース、Docker Compose V2はリリース候補が登場

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    「Docker Desktop 3.6」がリリース、Docker Compose V2はリリース候補が登場
    Malan
    Malan 2021/08/25
  • コンテナオーケストレータ「HashiCorp Nomad 1.1」ベータ版が公開

    HashiCorp Nomadは、オンプレミス環境とクラウド環境全体で、コンテナとコンテナ化されていないアプリケーションをデプロイおよび管理するための、シンプルで柔軟なオーケストレータで、Cloudflare、Roblox、Q2、Pandora、GitHubなど、幅広い組織で採用されている。 「HashiCorp Nomad 1.1」は、より柔軟なスケジューリングと簡素化されたオペレーターエクスペリエンスを実現する、数多くの新機能が搭載されており、コアスケジューラはクラスタ効率、アプリケーションパフォーマンス、ボリューム管理を改善すべく、新たなリソース制御メカニズムを採用したほか、Nomad Autoscalerでは柔軟なスケーリングポリシーが可能になった。 今回発表された「HashiCorp Nomad 1.1」ベータ版では、コンテナ化されているかどうかに関わらず、アプリケーションがスケ

    コンテナオーケストレータ「HashiCorp Nomad 1.1」ベータ版が公開
    Malan
    Malan 2021/05/07
  • Python 3.8.10/3.9.5/3.10.0b1がリリース、バージョン3.8系列は最後の定期リリースに

    Python 3.10.0b1」は、現在計画されている4つのベータリリースプレビューの最初のリリースで、より幅広いコミュニティに新機能とバグ修正をテストしてもらうことを目的とする。 開発チームは、サードパーティでPythonプロジェクトに携わっているメンテナに対して、ベータ段階で「Python 3.10」をテストし、発見された問題を早急にPythonバグトラッカーへ報告することを求めている。 なお、「Python 3.10.0b1」はプレビューリリースであり、実稼働環境での使用は推奨されない。また、次のプレビューリリースは5月25日を予定している。 「Python 3.9.5」は、Pythonの最新メジャー安定リリースで、多くの新機能と最適化が含まれる。また、「Python 3.10」ではmacOS向けとして従来のような10.9+インテルのみのバリアントは提供されないため、univers

    Python 3.8.10/3.9.5/3.10.0b1がリリース、バージョン3.8系列は最後の定期リリースに
    Malan
    Malan 2021/05/07
  • JavaScript/TypeScriptランタイム「Deno 1.5」がリリース、型チェックを最大15倍効率化

    Deno 1.5」では、前回のリリース以降取り組んできた、TypeScriptコンパイラインフラストラクチャ全体のリファクタリングによって、従来のバンドルインフラストラクチャをswcに基づく新たなバンドラに置き換え、コードタイプチェック時のパフォーマンスを3倍に向上するとともに、--no-checkフラグを使用することで最大15倍向上している。 さらに、バンドラによるコードのツリーシェイクが可能になり、バンドルサイズを大幅に縮小した。また、バンドルが標準のESモジュールとして発行されるようになっている。 その他のおもな機能追加としては、新たなWebプラットフォームAPIとして、ターミナルにメッセージを記録して確認するまで同期的にブロックするalert、ユーザーにメッセージを表示して応答するまで同期的にブロックするconfirm、ユーザーに入力を要求し、テキストを入力して「Enter」を押

    JavaScript/TypeScriptランタイム「Deno 1.5」がリリース、型チェックを最大15倍効率化
    Malan
    Malan 2020/11/11
  • Playwright for Pythonがプレビュー提供開始、高信頼のWebエンドツーエンドテストを可能に

    Playwright APIを使用することで、すべての最新Webブラウザによるエンドツーエンドのテスト作成が可能で、既存のテストツールよりも高速で信頼性が高く、優れた機能の自動化を提供する。 UIの準備が整うまで自動的に待機するため、テスト実行の信頼性が高まり、作成が容易になる。内部的には、DOMの変更、ネットワークリクエスト、ページナビゲーションといった正確なブラウザイベントをリッスンできる、イベント駆動型アーキテクチャを使用している。 モバイルビューポートのエミュレーション、ジオロケーション、Web権限など、新しいWeb機能の自動化に対応するほか、ネットワークアクティビティを傍受して変更し、複数のページにわたるシナリオの自動化を可能にする。 Chromium、WebKit、Mozilla Firefoxなど、最新ブラウザすべてのエンジン向けテストの自動作成に対応しており、WebKit

    Playwright for Pythonがプレビュー提供開始、高信頼のWebエンドツーエンドテストを可能に
    Malan
    Malan 2020/10/02
  • Mozilla、Webブラウザの最新版「Firefox 80」をリリース

    「Firefox 80」における開発者向けの変更としては、Webコンソールにおいてヘルパーコマンドの:blockおよび:unblockを使用して、ネットワーク要求のブロック/ブロック解除が可能になったほか、エレメントにクラスを追加する際に、ページインスペクタのルールペインにおいて既存クラスではオートコンプリートが提案されるようになっている。 また、デバッガが例外で中断した際に、ソースペインのツールチップにスタックトレースを示す三角形が表示されるようになったほか、ネットワークモニタのリクエストリストに待機時間が長くなることを示す「亀」のアイコンが表示されるようになった。 さらに、CSSにおける接頭辞なしのappearanceプロパティのサポート、JavaScriptではECMAScript 2021における「export * as namespace」構文のサポート、WebGLにおけるKHR

    Mozilla、Webブラウザの最新版「Firefox 80」をリリース
    Malan
    Malan 2020/09/02
  • 「Python 3.9」ベータ版リリース、Python 2からの脱却が加速

    2020/08/04 17:00 今回発表されたリリースにつきまして、当初「『Python 3.9』が、8月2日(現地時間)にリリースされた」としていましたが、今回リリースされたバージョンは、「Python 3.9.0b5」のリリースとなります。「Python 3.9」の正確なリリース日は未定です。訂正しお詫び申し上げます。(編集部) 「Python 3.9」では、Python 2のサポートを削除するとともに、Pythonを利用した各種プロジェクトのメンテナに時間的猶予を与えるべく、一部の下位互換性レイヤーの保持が決定されており、それらは今後リリース予定の「Python 3.10」にて削除される。 新機能としては、dictクラスに新たな演算子としてマージ(|)と更新(|=)が加わったほか、不要なプレフィックスまたはサフィックスを文字列から簡単に削除するためのstr.removeprefix

    「Python 3.9」ベータ版リリース、Python 2からの脱却が加速
    Malan
    Malan 2020/08/05
  • ホワイトハッカーの存在意義と、開発者が考えるべきセキュリティのこれから――侵入テストのプロ集団による「レッドチーム演習」のけん引者に聞く

    エフセキュアは、およそ300人ものホワイトハッカーを抱えるサイバーセキュリティ企業。同社プリンシパルセキュリティコンサルタントのTom van de Wiele(トム・ヴァン・デ・ヴィーレ)氏は、その中でも「レッドチーム演習」という、模擬的に対象組織を攻撃しその企業のセキュリティ対策が十分であるか検証を行うチームを率いている。企業にとって「最悪なシナリオ」を演出するというレッドチーム演習。その攻撃や侵入のための技術は多岐にわたる。2019年秋にフィンランド社で行われたプレス向け発表会で同氏は、レッドチームが日々どういった攻撃を仕掛けているのか、その攻撃者側の視点と手法を明らかにしながら、脅威が潜む場所を指摘した。また、発表会後にインタビューを敢行。開発者は開発プロセスにおいてセキュリティをどう考えるべきか、知見を聞いた。 企業が気づかないセキュリティの穴を見つける「レッドチーム演習」 「

    ホワイトハッカーの存在意義と、開発者が考えるべきセキュリティのこれから――侵入テストのプロ集団による「レッドチーム演習」のけん引者に聞く
    Malan
    Malan 2020/01/28
  • モダンPerl入門増補改訂版(仮)

    ページは『モダンPerl入門 増補改訂版(仮)』の特設サイトです。商品紹介のほか、電子書籍版の早期ディスカウント販売(β版を先行提供)などを予定しています。今後の更新情報は「CodeZine Books」のFacebookページなどで配信していきます。 書の内容 書は、Perl言語でプログラミングする上で、筆者の経験を基に日々の仕事で使えそうなティップスやベストプラクティスを集めたです。基礎知識は身につけている読者を想定して、Perlの基文法やプログラミングの基は意図的にカバーしていないため、プログラミング初心者にとって書は難解かもしれません。 2009年に刊行した初版では、いまだに根強い「PerlCGI」「Perl=オブジェクト指向ができない」「Perl=開発が止まっている」といった間違った思い込みを正したいという当時の筆者の思いから、筆者が使っている最新ツールやモジュ

    Malan
    Malan 2013/09/18
    モダンPerl入門増補改訂版(仮)
  • スマートフォン向けWebサイトの表示速度 高速化手法

    対象読者 スマートフォンWebサービス開発者 特に、フロントエンド周りの開発に従事する方 スマートフォン向けWebサイト高速化のテクニック スマートフォンはOS/デバイスの進化が激しく、要求される最適化の内容も半年で別物になることがあります。そのため最適化に際しては、案件ごとの状況や目的、デバイス/OSのシェアに応じて、まずターゲット端末を選定し、問題の検出を行います。 この記事では「iPhone 4+iOS 5」を想定して話を進めます。実際に「iPhone 4+iOS 5」はよく現場でも最も動作が重い組み合わせとしてターゲット端末に挙がります。これはiPhone 4がRetinaディスプレイを採用したことで960×460ピクセルの高解像度を備えながら、CPUなどのデバイス性能が潤沢とはいえず、ボトルネックが生まれやすいためです。iOS 4ではなくiOS 5をターゲット端末として扱うのは、

    スマートフォン向けWebサイトの表示速度 高速化手法
    Malan
    Malan 2012/11/10
  • PyCon JP 2012 レポート ~第3回 裏方の人々

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    PyCon JP 2012 レポート ~第3回 裏方の人々
    Malan
    Malan 2012/10/21
    PyCon JP 2012 レポート ~第3回 裏方の人々 (1/5):CodeZine