絞り込み条件を変更する
検索条件を絞り込む

すべてのカテゴリ

15 件中 1 - 15 件表示
カバー画像

Node.js + MySQLでコネクションプールを扱う方法

はじめにWebアプリケーションやAPIのバックエンドシステムを開発する際、データベースとのコネクション管理は重要な要素の一つです。効率的なコネクション管理は、アプリケーションのパフォーマンスとスケーラビリティに大きく影響します。このブログ記事では、コネクションプールの概念について解説し、Node.jsのMySQLライブラリを使った具体的な実装方法を紹介します。コネクションプールとは?コネクションプールは、データベースへの接続をプール(予め準備された接続の集まり)として管理する技術です。アプリケーションがデータベースとの通信を必要とする際、新たにコネクションを確立するのではなく、プールから利用可能なコネクションを取得します。使用が終わったコネクションは、再利用のためにプールに戻されます。この方法の利点は、コネクション確立のオーバーヘッドを削減し、リソースを効率的に使用できる点にあります。結果として、アプリケーションの応答性が向上し、大量の同時接続をより効果的に処理できます。Node.jsでのコネクションプールの実装Node.jsでMySQLデータベースとのコネクションプールを実装するには、mysqlライブラリを使用します。以下は、Node.jsでコネクションプールを設定し、使用するための基本的なステップです。ステップ 1: 必要なパッケージをインストールするまず、mysqlパッケージをプロジェクトにインストールします。npm install mysqlステップ 2: コネクションプールを作成するmysqlライブラリを使用して、コネクションプールを作成します。以下のコードスニペット
0
カバー画像

JavaScriptのフロントエンドとバックエンド

Webサイトを運営する上で、JavaScriptは欠かせない技術の一つです。しかし、JavaScriptを「フロントエンド」と「バックエンド」でどのように使い分けるかは、エンジニアではないサイト運営者にとってはややこしい話かもしれません。この記事では、技術的な難しい言葉を避けて、フロントエンドとバックエンドの違いを簡単に説明します。JavaScriptがサイト運営にどのように役立つのか、その理解を深めていただければ幸いです。フロントエンドとはフロントエンドは、ざっくり言うと、訪問者がブラウザを通して直接見て、触れることができるウェブサイトの部分です。ここでのJavaScriptの役割は、ウェブサイトをもっと使いやすく、また魅力的にすることです。例えば、スライドショーを表示したり、ボタンをクリックした時に何かがポップアップするような動きを加えたりします。このような動的な機能をウェブサイトに追加することで、訪問者にとって快適で楽しい体験を提供できます。バックエンドとはバックエンドは、フロントエンドの裏側で動いている部分で、訪問者には直接見えません。ここでは、ウェブサイトのデータの保存や管理、ウェブサイトがどのように動作するかという「ロジック」が実行されます。JavaScriptがバックエンドで使われる場合、サーバー上での処理に関わります。例えば、ユーザーがフォームに入力した情報をデータベースに保存したり、ユーザーのリクエストに基づいて特定の情報をウェブページに表示したりします。フロントエンドとバックエンドの違い簡単に言えば、フロントエンドは「見た目」と「ユーザーの体験」を、バックエ
0
カバー画像

阿修羅ワークス開発日誌 VPS×node.js×Puppeteer×WordPressでスクレイピン

久しぶりの開発日誌です。 2022年に入り、現在、サブスク型サービスの立ち上げに日々忙しいです。 その傍らで、ブラウザ自動操作ツールであるPuppeteer(パペッティア)をいじっています。 Puppeteerに似ているツールとしてSeleniumがありますが、大きな違いとしてはWebdriverが消せるかどうかにあります。 Webdriverとはなにかというと自動操作の識別子みたいなもので、要するに消せない=自動操作だとバレやすいことを意味します。 で、Puppeteerを動かすにはnode.jsが必要で、WindowsにもMacにもインストールはできるのですが、クラウド上すなわちローカルではない環境にインストールするにはVPSになります。 または、自由にサーバー環境を構築できることが必須となります。 残念ながら、node.jsはレンタルサーバーでは使えないため、自分で環境がカスタマイズできるVPSでないとダメなんですね。 VPSの問題は素人がいじるには敷居が高いことです。 その点レンタルサーバーなら契約すれば環境はほぼ整っていますし、WordPressなんかは1発インストール機能があったりします。 そこで、私の方でVPSを借りてnode.jsとPuppeteerをインストールします。 それを顧客側のWordPressで操作できるようにしよう、と考えています。 こうすることで、顧客側はVPSを借りる必要がなくなります。 で、なぜPuppeteerとかSeleniumかというと、ブラウザでないとスクレイピングできないサイトが増えてきているからです。 例えば、会員制サイトやメ○カ
0
カバー画像

Web 開発のための Windows PC の設定

Web 開発のための Windows PC の設定Windows の PC は、製造しているメーカーも多く、Mac に比べると比較的安価でハードウエアを購入できるために予算などが限られている場合などには有利です。この記事では、Windows の PC で Web 開発を行うのに最低限必要な設定について紹介します。  Web 開発に必要な性能は?既に、紹介していますが、一般的な Web 開発を行うのに高性能で高価な PC は特に必要はありません。多少古い PC でも十分に対応できます。従って、現在手持ちの PC がある場合にはその活用をお勧めします。私の場合、ノート型の PC は昨年末までは、古い PC を活用していました。4〜5年くらい前の PC でも多少遅く感じることはありますが、大きな問題なく利用できていました。目安としては、他に利用するアプリにもよりますが、Web 開発のみならば、メモリ容量は標準的な8 GB で十分ですし、ディスクドライブ(HDD/SSD)の容量は100 GB もあれば OS とアプリを入れても十分な作業エリアが確保できます。古い PC でディスクドライブが HDD の場合、SSD に取り替えるだけで、実用上の体感性能が上がります。ただし、この作業は、OS の再インストールかコピーが必要なので、自分で OS のインストールができない場合はちょっと難しくなります。CPU は過去4〜5年以内のものであれば性能的にはとりあえず問題はありません。実際に、手持ちの PC で開発してみて問題になった時に買い替えを検討すれば良いかと思います。新規に購入するならば、ノー
0
カバー画像

Electron - なぜ色々なOSで動く?

Electron - なぜ色々なOSで動く?Electron アプリは、Windows/Mac/Linux で動作させることが出来ます。とても便利ですが、どうして簡単にそんな事ができるのでしょうか?この記事では、その謎に迫ってみようと思います。Electron の中身を知るElectron 自体は、GitHub が開発したフレームワークです。基本コンセプトは Web 開発の技術を使ってデスクトップのアプリを作ろうという物です。 中身はというと、「Chromium」と「Node.js」を使ってデスクトップのアプリを実現しています。実は、この「Chromium」に Electron の秘密があります。「Chromium」自体は、Google の Chrome ブラウザの基になっているオープンソースです。つまり、簡単に一言で言うならば Electron は Web ブラウザ上で動いているアプリと言うことになります。実際には、アプリ限定の機能だけを表示できる Web ブラウザと言う方がわかりやすいかもしれません。デスクトップアプリ専用のブラウザを作ってその中で実行していると言うのが Chromium を使った Electron アプリの原理です。エントリーポイントはブラウザを作るための仕組みElectron アプリのエントリーポイントのコードは簡単に言うとアプリ専用のブラウザを準備するための仕組みです。通常の Web アプリの場合は、既存の Web ブラウザを使うために、この部分は必要ありません。URL を指定すれば、その場所からデータを取ってきて表示してくれます。 Electron
0
カバー画像

システムの開発及び構築の相談・改修と幅広くお手伝いします

ご覧いただきありがとうございます! 要件定義・設計・実装・テスト・リリース・技術相談と幅広くが対応可能でございます。 LaravelやStripeなどの決済システムや外部APIの実績も多数ございますので、まずはお気軽にお問い合わせください。 迅速丁寧な対応を心がけておりますので、よろしくお願いいたします。 『例』  →Webシステムの開発のお手伝いをしてほしい →HTML・CSS・Javascriptを使ったWebサイト作成・修正 →既存システムの修正・機能改修をお手伝いしてほしい →Webサービスの仕様・設計をお手伝いしてほしい その他ご相談承ります。 『対応実績』 →Laravelを使用したAPIの開発 →Stripeを使った決済機能の追加 →外部APIを使ったシステム開発 →テーブル設計 【 対応言語 】 ・PHP/Laravel ・HTML/CSS ・Javascript/Vue.js/Nuxt.js・Python(Django or Flask)・Java(SpringBoot)
0
カバー画像

JAMstackの勉強

JAMstackの勉強のため、Windows365のクラウドPCに、node.jsをインストールして、Next.jsをインストールしました。 そして開発サーバーの起動まで、できました。 LAMPでサーバー構築することを思うと、こちらの方が、簡単のように思えました。セキュリティを高くしてウェブサイトを作る事ができるので、注目されているようです。私も、勉強を続けています。
0
カバー画像

npmとは?

Web開発を学んでいると、よく出てくる「npm」という言葉。初心者にとっては「結局なんなの?」と思うことが多い用語です。この記事では、npmの意味と役割をわかりやすく解説します。npmとは?npm(エヌピーエム)とは Node Package Manager の略で、JavaScriptのライブラリやツールを管理するための仕組みのことです。簡単にいうと「Web開発に必要な便利ツールや機能を、インターネットからダウンロードして使えるようにするサービス」です。npmには次の2つの意味があります。パッケージ管理ツールコマンド(例:npm install xxx)を使って、ライブラリをインストール・更新・削除できるツールのこと。パッケージの公開サービス世界中の開発者が作ったライブラリ(パッケージ)が公開されていて、誰でも自由に利用できる巨大なプラットフォームのこと。つまりnpmは「仕組み」と「サービス」の両方を指しています。なぜnpmが必要なのか?Web開発では、自分ですべての機能を作るのは効率が悪いため、多くの人は既存のライブラリを組み合わせて開発します。例えば:サイトのデザインを効率的に整える → Tailwind CSSビルドや自動化を行う → Viteフレームワークを利用する → React や Next.jsこれらはすべてnpm経由でインストールして使えるようになります。npmがあることで、開発者は「車輪の再発明」をせず、必要な機能をすぐにプロジェクトへ導入できるのです。具体的な使い方npmを使うには、まず Node.js をインストールします。Node.jsを入れると、自動
0
カバー画像

【2026年】今年こそAIを使いこなす!「まずは動く」が成功の鍵&超簡単Node.js導入ガイド

あけましておめでとうございます! 年末年始にもかかわらず、AI活用や自動化に関する多くのお問い合わせをいただき、本当にありがとうございます。皆様の「今年こそは!」という熱気あるスタートダッシュに、私も刺激を受けています。ご相談の中で、私が繰り返しお伝えしているたった一つのアドバイスがあります。 それは、 「難しく考える前に、まずは環境を作って動かしてみましょう!」 ということです。「準備が整ったら」「勉強してから」と考えていると、あっという間に時間は過ぎてしまいます。話題の Claude Code や Gemini CLI といった最新AIツールは、一度環境さえ整えてしまえば、あなたの強力な相棒になります。AIがコードを書き、エラーを直し、あなたのアイデアを形にしてくれるのです。でも、「最初の『黒い画面』での設定が怖くて…」というお声もよく分かります。そこで新年のプレゼントとして、全てのAIツールの基本となる**「Node.js(ノード・ジェイエス)」**の、一番簡単な導入手順をまとめました。これさえクリアすれば、あとは魔法のようにAIツールが使えるようになります。今年最初の「小さな成功体験」を、ここから始めましょう!【初心者向け】10分で完了!Node.js 導入の3ステップ最新のAIツールを動かすための「土台」がこのNode.jsです。難しいことは考えず、以下の手順通りに進めてみてください。WindowsでもMacでも大丈夫です。ステップ1:公式サイトへアクセス まずはNode.jsの公式サイトnodejs.org にアクセスします。ステップ2:「推奨版 (LTS)」をダウ
0
カバー画像

Node.js のビルドツール「esbuild」について!

# はじめにesbuild は、キャッシュなしで高速なビルドを可能とする Node.js のビルドツールです。ビルドツールには、esbuild の他に、Webpack、Gulp、Parcel、Rollup、Browserify、FuseBox などがあります。私自身が webpack を普段使っていて、ビルドに時間がかかりすぎているのが気になり、esbuild について調べてみようと思いました。esbuild の特徴としては、- キャッシュなしでの高速なビルド- ES6 と CommonJS をサポート- ES6 の Tree shaking 対応(利用されていないコードの除去)- JavaScript と Go による API- TypeScript と JSX をサポート- ソースマップの生成- ソースコードの最小化- プラグイン(現在、experimental で v1.0.0 より前に対応予定)が挙げられます。この中でも注目すべきは、そのビルド速度にあると思います。# なぜ早いのか?1. esbuild は Go で書かれており、ネイティブコードへコンパイルしているほとんどのビルドツールは、Javascript によって書かれており、JIT コンパイルを使用するため、速度が遅い。Go は、並列処理が得意で共有メモリをスレッド間で使用する。また、ヒープメモリも共有している。よって、CPU を効率的に使用して、並列処理を行える。2. 並列で処理を行う昨今のPCは、複数のメモリを持っているため、効率的に並列処理を行える。3. esbuild は、0 から速度を意識して作られた
0
カバー画像

Node.jsとは

Node.js(ノードジェイエス)は、JavaScript をサーバーサイドでも動かせるようにした実行環境です。もともと JavaScript はブラウザの中でしか動きませんでしたが、Node.js の登場によって「Webサーバーを作る」「APIを作る」「バッチ処理を行う」「コマンドラインツールを作る」など、バックエンド開発にも JavaScript を使える時代が一気に広がりました。Node.js の特徴1. JavaScriptでサーバーが書けるフロントエンドもバックエンドも JS で統一できるので、コードの書き方・考え方が揃い、エンジニアの学習コストを下げられます。2. 高速に動く(V8エンジン)Node.js は Google Chrome と同じ V8エンジンを使っており、非常に高速に動作します。3. 非同期・イベント駆動で軽量Node.js は非同期処理が得意で、少ないリソースでも多くのリクエストをさばけます。リアルタイム性が高いサービス(チャット、通知、ゲームサーバーなど)との相性が良いのはこのためです。4. npmで豊富なライブラリが使えるNode.js には世界最大級のパッケージ群が揃う npm(Node Package Manager) が付いていて、APIサーバー、認証、ログ、スクレイピング、機械学習など、必要な機能はほぼ npm で揃います。Node.js でできること(具体例)API サーバー構築(Express / NestJS / Fastify など)フロント用ビルドツール(Vite / Webpack / Next.js)CLI ツール(esl
0
カバー画像

【緊急対応】VercelからNode.js 18サポート終了の お知らせが来た企業様へ

2025年9月1日(月)から、VercelでNode.js 18のサポートが終了します。もし、以下のようなメールを受け取って不安になっている方がいらっしゃいましたら、この記事をお読みください。Hi [ユーザー名],Starting Monday, September 1st, 2025, Node.js 18 will no longer be supported on Vercel. Please upgrade to Node.js 22 as soon as possible to keep receiving security updates and prevent any........大丈夫です。適切に対応すれば、サービスは問題なく動き続けます。経営者の方へ:何が起きているのか簡単に言うとお使いのWebサイトやアプリケーションが動いている「土台」のバージョンが古くなったので、新しいバージョンに更新する必要があります。例えるなら:Windows 7のサポートが終了して、Windows 10や11に更新が必要になったようなもの古いiPhoneでアプリが動かなくなって、新しいiPhoneが必要になったようなものなぜ急ぐ必要があるのか2025年9月1日以降、更新しないと以下のリスクがあります。・セキュリティの脆弱性が放置される(ハッキングリスク増大)・新機能が使えない・最悪の場合、サイトが表示されなくなる可能性費用はどのくらい?通常、このような更新作業には調査・検証:1〜2日実際の更新作業:1〜3日テスト・確認:1日合計3〜6日程度の工数がかかります。技術担当者の方へ具体的
0
カバー画像

Nginx Node.js PM2によるWebSocketサーバー

概要説明Nginxをフロントエンドに使い、Node.jsをバックエンドのWebSocketサーバーとして動作させることで、リアルタイム通信と高パフォーマンスなWebサービスを実現しています。PM2を使ってNode.jsプロセスを監視し、サーバーの再起動時にもサービスを自動復旧できるようにしています。またSSL化を行い、暗号化された**wss://**通信に対応しています。技術  => 用途・役割- Nginx => リバースプロキシ、ロードバランサー、静的コンテンツ配信、SSL/TLS終端処理- Node.js => 非同期処理に優れたJavaScriptランタイム。WebSocketサーバーの構築に使用- WebSocket (wss) => ブラウザとサーバー間のリアルタイム双方向通信を実現- PM2 Node.js => プロセスの永続化と監視、自動再起動、ログ管理- - HTTPS =>(wss://)通信の暗号化対応- HTML/JavaScript => フロントエンドでWebSocketを利用したリアルタイムデータの表示Nginxがフロントエンドのゲートウェイとして動作し、HTTPリクエストとWebSocket通信のプロキシを担当しています。Node.jsで構築したWebSocketサーバーはリアルタイム通信を処理し、複数のクライアントに低遅延なデータ配信を実現します。サーバーの再起動や障害が発生しても、PM2がプロセスを自動で復旧します。また、SSL化されているため、通信は暗号化され、外部からの盗聴や改ざんを防ぎます。処
0
カバー画像

JavaScript package managerのvoltaの設定をしました

nodenvを使っていたのですが乗り換えましたvolta使ってみると良いですよ
0
カバー画像

Puppeteer とは?

# はじめにE2EテストやWebスクレイビングするときに使うPuppeteerについて調べてみました。Googleのカンファレンスでも紹介されていたのとNode.jsを使うことがあるので、それに合わせてPuppeteerも使っていこうと思います。# 準備```bash$ brew install yarn$ yarn add puppeteer$ yarn add -D [at]types/node typescript ts-node [at]types/puppeteer```# 最小限の構成```json:package.json{  "scripts": {    "test": "ts-node src/all.ts"  },  "dependencies": {    "puppeteer": "^5.2.1"  },  "devDependencies": {    "[at]types/node": "^14.6.4",    "[at]types/puppeteer": "^3.0.1",    "ts-node": "^9.0.0",    "typescript": "^4.0.2"  }}``````json:tsconfig.json{  "compilerOptions": {    "sourceMap": true,    "target": "es2017",    "module": "commonjs",    "lib": ["dom", "es2017"],    "outDir": "./dist",    "rootDir": ".
0
15 件中 1 - 15