デザインワン・ジャパン Tech Blog

https://tech.designone.jp/

DesignOne Japan | Activate the World.

フィード

記事のアイキャッチ画像
文字コードの罠
デザインワン・ジャパン Tech Blog
はじめに こんにちは!株式会社デザインワン・ジャパンでエキテンの開発を担当しているサービス開発部の寺井です。 文字コードを使う際、今の時代 UTF-8 を使うことがほとんどでしょう。 昔は Shift-JIS や EUC-JP などの文字コードが混在していて、文字化けをしばしば見かけましたが、ここ数年は Web ページで遭遇したことはないです。 (UTF-8 の CSV を Excel で開こうとしたときには、文字化けを見ましたが...) 今や UTF-8 が主流なので、もう文字コードに悩まされることはないんだ。きっとそう。そう、であって欲しかった...。 パピコ問題 気まぐれで、同僚に以下の…
8ヶ月前
記事のアイキャッチ画像
ウミガメは障害調査に役立つ
デザインワン・ジャパン Tech Blog
はじめに こんにちは!株式会社デザインワン・ジャパンでエキテンの開発を担当しているサービス開発部の寺井です。 最近社内でウミガメのスープが流行っています。私は出題者に回ることが多いのですが、回答者になって質問している時、ふと気づきました。 「最初何もわからない状況から答えを探し出すのは、障害調査と似ているのでは?」 と。そして、 「ウミガメのスープを解く能力は、障害調査に役立つのでは?」 と。そのことを実際の障害調査を出しながら見ていこうと思います。 ウミガメのスープとは まず、水平思考という用語について触れていきます。Wikipedia によりますと、 水平思考(すいへいしこう、英:Late…
1年前
記事のアイキャッチ画像
API Gateway をつかってパラメータストアの値を取得してみた
デザインワン・ジャパン Tech Blog
まえがき API Gateway 経由でパラメータストアの値を取得することになった経緯 事前準備 API Gatewayの構築、設定 まとめ おわりに まえがき インフラエンジニアの 冨田(@komitta)です。好きなAWSサービスはAPI Gatewayです。 ということでAPI GatewayのAWS サービス統合機能を使ってパラメータストアの値を取得してみたお話をします。 API Gateway 経由でパラメータストアの値を取得することになった経緯 弊社で運営しているエキテンサービスではAWS ECS Fargateを利用してアプリケーションを開発しています。 Fargate環境で秘匿…
2年前
記事のアイキャッチ画像
CloudFront Functions を使ったリダイレクト処理でクエリパラメータの取得に苦戦した話
デザインワン・ジャパン Tech Blog
まえがき EC2サーバーで稼働していたリダイレクト処理について CloudFront Functions でのイベント構造について CloudFront Functions でのクエリパラメータの取得方法 まとめ おわりに まえがき インフラエンジニアの 冨田(@komitta)です。夏休みの宿題は最終日にやるタイプです。 弊社で運用しているエキテンではEC2環境からコンテナを使った環境への移行を行っています。 今回はEC2サーバーを廃棄するにあたって使用していたリダイレクト処理をCloudFront Functionsに移行したときのお話です。 すんなり終わるかと思っていたら、ハマった箇所が…
2年前
記事のアイキャッチ画像
【PHP】タイプヒンティングをより強力にするArrayShape
デザインワン・ジャパン Tech Blog
はじめに タイプヒンティングとは 配列のタイプヒンティング ArrayShapeとは ArrayShapeによる連想配列の定義 ArrayShapeによる配列の定義 まとめ 仲間を募集しております はじめに こんにちは!株式会社デザインワン・ジャパンで口コミサービス エキテンのリニューアルを担当しているサービス開発部の鈴木セシル(@suzuki_cecil_)です。 弊社では現在、15年間運用され続けている口コミサービス エキテン のリニューアルプロジェクトに取り組んでおります。 エキテンはリニューアル前後ともにPHPで開発をしているのですがリニューアル前は一部古いアプリケーションがPHP5系…
2年前
記事のアイキャッチ画像
kanikoを使ったGitLab Container Registry と AWS ECRの認証方法について
デザインワン・ジャパン Tech Blog
まえがき これまでのコンテナのデプロイ方法 kaniko を使ったDockerイメージビルド 独自ドメインで自前の証明書を使用する場合 GitLab Container RegistryとAWS ECRの併用する場合 まとめ おわりに まえがき インフラエンジニアの 冨田(@komitta)です。今回はデプロイのお話です。 弊社で運用しているエキテンでは一部EC2の構成も稼働していますが、コンテナを使った環境も存在しています。今回はこのコンテナでのデプロイについてお話します。 これまでのコンテナのデプロイ方法 エキテンではEC2上で構築したGitLabサーバーのGitLab CIを使ってデプロ…
2年前
記事のアイキャッチ画像
AWS 分散負荷テスト(Distributed Load Testing on AWS)でJMeterのシナリオを使ったテストについて
デザインワン・ジャパン Tech Blog
まえがき Distributed Load Testing on AWS とは JMeterのシナリオを使って実行が可能 JMeterシナリオテストで外部ファイルを使う場合 まとめ おわりに まえがき なかなかゴルフが上手くならない インフラエンジニアの 冨田(@komitta)です。 今回はAWS 上の公式ソリューションサービスであるDistributed Load Testing on AWS*1上でJMeterのシナリオを使って、負荷試験を実施したときの内容をお話ししたいと思います。 Distributed Load Testing on AWS とは Distributed Load …
2年前
記事のアイキャッチ画像
【Guzzle】アップロード(multipart/form-dataを送信)したファイルが壊れていた際の対応
デザインワン・ジャパン Tech Blog
はじめに Guzzleによるファイルアップロード方法1(Request Optionsにmultipartを指定) Guzzleによるファイルアップロード方法2(Request Optionsにheadersを指定) まとめ 仲間を募集しております はじめに こんにちは!株式会社デザインワン・ジャパンで口コミサービス エキテンのリニューアルを担当しているサービス開発部の鈴木セシル(@suzuki_cecil_)です。 弊社では現在、15年間運用され続けている口コミサービス エキテン のリニューアルプロジェクトに取り組んでおります。 リニューアルプロジェクトではHTTPクライアントに Guzzl…
2年前
記事のアイキャッチ画像
【PHP】【初学者向け】抽象メソッド&インターフェース入門
デザインワン・ジャパン Tech Blog
はじめに インターフェースと抽象クラスの言語仕様の違い 多重継承が不可能である 定義できるメソッドのアクセス修飾子が異なる インターフェースではプロパティの定義ができない インターフェースと抽象メソッドの活用例 インターフェースの活用例 抽象メソッドの活用例 まとめ 仲間を募集しております はじめに こんにちは!株式会社デザインワン・ジャパンで口コミサービス エキテンのリニューアルを担当しているサービス開発部の鈴木セシル(@suzuki_cecil_)です。 弊社では少し前からインターンシップとして大学院生のK君が入社されたのですが、そんなK君から「インターフェースに定義するメソッドと抽象クラ…
2年前
記事のアイキャッチ画像
GAS で Slack 投稿してみたというお話
デザインワン・ジャパン Tech Blog
はじめに こんにちは!株式会社デザインワン・ジャパンでエキテンの開発を担当しているサービス開発部の寺井です。 弊社ではスライド出社という制度があり、前日までに申請さえすれば、勤務開始時間を7時から11時の間で1時間単位でずらすことができます。 この制度は「前日夜遅いから翌日は11時出社にしよう」「退社後予定あるから7時出社にしよう」という感じで使える、プライベートの予定に強い制度です。 ただ、自由度が高い上に欠点がありました。それは、翌営業日のチームメンバーの出社時間がぱっとわからない、ということです。 各々の Google カレンダーには勤務時間がわかるように登録されているのですが、いちいち…
2年前
記事のアイキャッチ画像
静的ファイル配信システムをCloudFront+S3の構成に移行したときCORSエラーにハマったお話
デザインワン・ジャパン Tech Blog
まえがき 移行内容について フォントファイルでCORSエラーが出力されてる そもそもCORSとは CORSが必要な条件を確認してみた S3側でバケットポリシー対応が必要だった まとめ おわりに まえがき 最近、運動不足で地球の重力を日増しに感じている インフラエンジニアの 冨田(@komitta)です。 今回は移行作業時のちょっとした失敗談をお話ししたいと思います。 移行内容について エキテンでは静的ファイルを配信するドメインとユーザーが閲覧する公開用のドメインを分けて構築しています。 静的ファイルを配信する環境の元々の構成はEC2サーバーを使用して公開しておりましたが、 より可用性およびコス…
2年前
記事のアイキャッチ画像
【PHP 8.1】とうとうPHPにもEnumがやってきた
デザインワン・ジャパン Tech Blog
概要説明 そもそもEnumとは何か? Enumの登場でどう変わるか クラス(擬似的なEnum)による実装 Enumによる実装 Enumの仕様 cases Pure Enum, Backed Enum from, tryFrom 継承、インターフェース メソッド、staticメソッドの定義 トレイト 感想 おわりに 概要説明 こんにちは!株式会社デザインワン・ジャパンで口コミサービス エキテンのリニューアルを担当しているサービス開発部の鈴木セシル(@suzuki_cecil_)です。 弊社が運用しているエキテンのバックエンドはほぼPHPで実装しております。そんなPHPに関して、先日メジャーリリー…
2年前
記事のアイキャッチ画像
【Laravel】頻出Eloquent逆引きリファレンス
デザインワン・ジャパン Tech Blog
概要説明 テーブル モデル A AND (B OR C) GROUP BYごとにCOUNTする 関連テーブルと結合するレコードを取得 おわりに 概要説明 こんにちは!株式会社デザインワン・ジャパンで口コミサービス エキテンのリニューアルを担当しているサービス開発部の鈴木セシル(@suzuki_cecil_)です。 リニューアルプロジェクト通して溜まったLaravelのEloquentのナレッジを活用して逆引きリファレンスにしてみようかと思います。皆様の実装の助けになれば幸いです。 テーブル 今回は店舗テーブルとカテゴリテーブルおよび中間テーブルを例に出して解説をしていきます。テーブル設計、サン…
2年前
記事のアイキャッチ画像
社内の Slack の絵文字の使用頻度を集計してみた
デザインワン・ジャパン Tech Blog
はじめに こんにちは!株式会社デザインワン・ジャパンでエキテンの開発を担当しているサービス開発部の寺井です。 弊社は、社内チャットツールとして Slack を採用しています。IT系の人なら馴染み深いものかもしれないですが、発言に対して絵文字でリアクションすることができます。 上記画像のように、デフォルトで用意されている以外にもカスタムで作成し使用することができ、リアクションとして "私も" と "いい判断" という絵文字が付けられています(発言内にも "まじ参加" というカスタム絵文字が使われています)。 カスタム絵文字が執筆時点で 914 個も作成されていて、一体どの絵文字が使われているのか…
2年前
記事のアイキャッチ画像
【Laravel】Blade Componentsとサブビューの対比
デザインワン・ジャパン Tech Blog
概要説明 Blade Componentsとは Class Based Components Anonymous Components ソースコード例 共通ファイル サブビューによる実装 Blade Componentsによる実装 Blade Componentsの所感 仲間を募集しております 参考URL 概要説明 こんにちは!株式会社デザインワン・ジャパンで口コミサービス エキテンのリニューアルを担当しているサービス開発部の鈴木セシル(@suzuki_cecil_)です。 リニューアルプロジェクトではLaravelを採用しており、ビューはBlade Componentsを活用して実装していま…
2年前
記事のアイキャッチ画像
AWS Certified Cloud Practitioner 勉強法
デザインワン・ジャパン Tech Blog
概要説明 AWS Certifiedとは 役割別認定 基礎コース アソシエイト プロフェッショナル 専門知識認定 Cloud Practitionerの勉強法 勉強法要約 AWS認定資格試験テキスト AWS認定 クラウドプラクティショナー Udemy この問題だけで合格可能!AWS 認定クラウドプラクティショナー 模擬試験問題集(7回分455問) 試験結果 おわりに 仲間を募集しております 参考URL 概要説明 こんにちは!株式会社デザインワン・ジャパンでエキテンのリニューアルを担当しているサービス開発部の鈴木セシル(@suzuki_cecil_)です。 このたびサーバーサイドエンジニアである…
3年前
記事のアイキャッチ画像
エキテンリニューアルにおけるクリーンアーキテクチャのクラス構成
デザインワン・ジャパン Tech Blog
概要説明 クリーンアーキテクチャとは クリーンアーキテクチャにおける4つの層 個人的な見解 リニューアルプロジェクトにおけるクリーンアーキテクチャの構成 クラス構成図 入力 Controller Converter UsecaseInput 永続 Usecase Factory DTO Query QueryGateway Dao Transformer 出力 UsecaseOutputImpl UsecaseOutput Presenter ViewModel クリーンアーキテクチャを導入した所感 クリーンアーキテクチャのメリット クリーンアーキテクチャのデメリット 仲間を募集しております …
3年前
記事のアイキャッチ画像
オンプレサーバーにAmazon Linux 2のVMを構築しよう
デザインワン・ジャパン Tech Blog
はじめに こんにちは!株式会社デザインワン・ジャパンでインフラ業務を担当している情報戦略部の冨田(@komitta)です。 本日よりデザインワン・ジャパンのテックブログを開設いたしました。 業務で培った内容をアウトプットし、世の中の発展につながることを目的としてゆるく続けていければと思っております。 はじめに 概要説明 Proxmoxについて Amazon Linux 2のVMを構築する Ansible によるプロビジョニング ディレクトリ構成 ./ansible/dev ./images/DockerFile ./docker-compose.yml おわりに 仲間を募集しております 参考U…
3年前