当前位置: 首页 > news >正文

个人网站相册怎么做铭讯网站建设

个人网站相册怎么做,铭讯网站建设,wordpress 不做SEO,深圳好的网站制作哪家快用到的技术栈#xff1a; nodejswebpackknockoutmongodbPM2rabbitmq 以下是一个综合指南#xff0c;展示如何将 Node.js、Webpack、Knockout.js、MongoDB、PM2 和 RabbitMQ 集成到一个项目中。 我们将在这一项目中添加 RabbitMQ#xff0c;用于处理消息队列。这对于任务分…用到的技术栈 nodejswebpackknockoutmongodbPM2rabbitmq 以下是一个综合指南展示如何将 Node.js、Webpack、Knockout.js、MongoDB、PM2 和 RabbitMQ 集成到一个项目中。 我们将在这一项目中添加 RabbitMQ用于处理消息队列。这对于任务分派、异步处理等场景非常有用。 第一步: 初始化项目 首先创建一个新的项目目录并初始化一个 Node.js 项目 Copy mkdir my-app cd my-app npm init -y 这将在 my-app 目录下创建一个 package.json 文件。 第二步: 安装依赖 我们需要安装以下依赖库 项目依赖 express: 用于创建服务器 mongoose: 用于连接和操作 MongoDB knockout: 用于创建响应式 UI amqplib: AMQP 0-9-1 客户端用于与 RabbitMQ 交互 Copy npm install express mongoose knockout amqplib 开发依赖 webpack: 用于打包前端代码 webpack-cli: 命令行工具用于运行 Webpack webpack-dev-server: 开发服务器提供实时重新加载功能 Copy npm install --save-dev webpack webpack-cli webpack-dev-server 安装 PM2 PM2 是一个进程管理器用于长时间运行的 Node.js 应用程序 Copy npm install pm2 -g 如果希望本地安装 PM2也可以用以下命令 Copy npm install pm2 --save-dev 第三步: 创建服务器文件 创建 server.js 在根目录下创建一个 server.js 文件并添加以下代码 Copy const express require(‘express’); const mongoose require(‘mongoose’); const amqp require(‘amqplib/callback_api’); // 连接到本地 MongoDB 数据库 myapp mongoose.connect(‘mongodb://localhost:27017/myapp’, { useNewUrlParser: true, useUnifiedTopology: true }); const app express(); app.use(express.json()); // 定义一个 Mongoose 模型 const ItemSchema new mongoose.Schema({ name: String }); const Item mongoose.model(‘Item’, ItemSchema); // API 路由 app.get(‘/items’, async (req, res) { const items await Item.find(); res.json(items); }); app.post(‘/items’, async (req, res) { const newItem new Item(req.body); await newItem.save(); // 发送消息到 RabbitMQ sendToQueue(newItem);res.json(newItem);}); // 启动服务器 app.listen(3000, () { console.log(‘Server is listening on port 3000’); }); // 连接到 RabbitMQ 并发送消息 function sendToQueue(item) { amqp.connect(‘amqp://localhost’, (error0, connection) { if (error0) { throw error0; } connection.createChannel((error1, channel) {if (error1) {throw error1;}const queue itemQueue;const msg JSON.stringify(item);channel.assertQueue(queue, {durable: false});channel.sendToQueue(queue, Buffer.from(msg));console.log( [x] Sent %s, msg);});setTimeout(() {connection.close();}, 500); });} 注意: 请确保你的 RabbitMQ 和 MongoDB 服务器正在运行。你可以使用以下命令启动它们 Copy 启动 MongoDB mongod 启动 RabbitMQ (RabbitMQ 必须已经安装) rabbitmq-server 消费 RabbitMQ 队列中的消息 创建一个 consumer.js 文件用于消费队列中的消息 Copy const amqp require(‘amqplib/callback_api’); amqp.connect(‘amqp://localhost’, (error0, connection) { if (error0) { throw error0; } connection.createChannel((error1, channel) { if (error1) { throw error1; } const queue itemQueue;channel.assertQueue(queue, {durable: false});console.log( [*] Waiting for messages in %s. To exit press CTRLC, queue);channel.consume(queue, (msg) {const item JSON.parse(msg.content.toString());console.log( [x] Received %s, item.name);// 在这里处理收到的消息}, {noAck: true}); });}); 启动 PM2 管理器 PM2 可以用于同时启动我们的 server.js 和 consumer.js 。 更新 package.json 脚本 Copy “scripts”: { “start”: “webpack serve”, “serve”: “webpack build pm2 start ecosystem.config.js” } 创建 ecosystem.config.js Copy module.exports { apps: [{ name: ‘server’, script: ‘server.js’, instances: 1, autorestart: true, watch: false, max_memory_restart: ‘1G’ }, { name: ‘consumer’, script: ‘consumer.js’, instances: 1, autorestart: true, watch: false, max_memory_restart: ‘1G’ }] }; 配置 Webpack 在根目录下创建一个 webpack.config.js 文件并添加以下代码 Copy const path require(‘path’); module.exports { entry: ‘./src/main.js’, output: { filename: ‘bundle.js’, path: path.resolve(__dirname, ‘dist’) }, devServer: { static: { directory: path.join(__dirname, ‘dist’), }, compress: true, port: 9000 }, mode: ‘development’ }; 创建前端代码 创建必要的目录和文件 Copy mkdir src touch src/main.js touch src/index.html 编辑 src/index.html Copy Webpack, Knockout.js, MongoDB, RabbitMQ Webpack Knockout.js MongoDB RabbitMQ Add Item 编辑 src/main.js Copy import ko from ‘knockout’; class ViewModel { constructor() { this.newItem ko.observable(‘’); this.items ko.observableArray([]); this.loadItems();this.addItem this.addItem.bind(this); }async loadItems() {const response await fetch(http://localhost:3000/items);const items await response.json();this.items(items); }async addItem() {const response await fetch(http://localhost:3000/items, {method: POST,headers: {Content-Type: application/json},body: JSON.stringify({ name: this.newItem() })});const item await response.json();this.items.push(item);this.newItem(); }} ko.applyBindings(new ViewModel()); 启动应用 用 Webpack Dev Server 开发 运行以下命令来启动开发服务器 Copy npm start 在生产环境中用 PM2 启动 运行以下命令来构建并使用 PM2 启动服务器: Copy npm run serve PM2 管理 一些常用的 PM2 命令包括 查看所有进程pm2 list 停止某个进程pm2 stop process_id 重启某个进程pm2 restart process_id 删除某个进程pm2 delete process_id 查看进程日志pm2 logs process_id 通过这些步骤您已经设置了一个使用 Node.js、Webpack、Knockout.js、MongoDB、PM2 和 RabbitMQ 的综合全栈应用。这种结构对于处理复杂任务和异步操作非常有效。 17:38
文章转载自:
http://www.morning.bnfsw.cn.gov.cn.bnfsw.cn
http://www.morning.pdwzr.cn.gov.cn.pdwzr.cn
http://www.morning.wmnpm.cn.gov.cn.wmnpm.cn
http://www.morning.jbnss.cn.gov.cn.jbnss.cn
http://www.morning.mrfbp.cn.gov.cn.mrfbp.cn
http://www.morning.xjnw.cn.gov.cn.xjnw.cn
http://www.morning.yongkangyiyuan-pfk.com.gov.cn.yongkangyiyuan-pfk.com
http://www.morning.rfhmb.cn.gov.cn.rfhmb.cn
http://www.morning.pdgqf.cn.gov.cn.pdgqf.cn
http://www.morning.sqgqh.cn.gov.cn.sqgqh.cn
http://www.morning.bqwnp.cn.gov.cn.bqwnp.cn
http://www.morning.jfbgn.cn.gov.cn.jfbgn.cn
http://www.morning.ypcbm.cn.gov.cn.ypcbm.cn
http://www.morning.jwbnm.cn.gov.cn.jwbnm.cn
http://www.morning.wkrkb.cn.gov.cn.wkrkb.cn
http://www.morning.wwjft.cn.gov.cn.wwjft.cn
http://www.morning.hous-e.com.gov.cn.hous-e.com
http://www.morning.ghfrb.cn.gov.cn.ghfrb.cn
http://www.morning.pmwhj.cn.gov.cn.pmwhj.cn
http://www.morning.gbkkt.cn.gov.cn.gbkkt.cn
http://www.morning.xprq.cn.gov.cn.xprq.cn
http://www.morning.nqlnd.cn.gov.cn.nqlnd.cn
http://www.morning.rymd.cn.gov.cn.rymd.cn
http://www.morning.xsqbx.cn.gov.cn.xsqbx.cn
http://www.morning.whnps.cn.gov.cn.whnps.cn
http://www.morning.prxqd.cn.gov.cn.prxqd.cn
http://www.morning.bqxxq.cn.gov.cn.bqxxq.cn
http://www.morning.hxwrs.cn.gov.cn.hxwrs.cn
http://www.morning.rnkq.cn.gov.cn.rnkq.cn
http://www.morning.wwdlg.cn.gov.cn.wwdlg.cn
http://www.morning.dfffm.cn.gov.cn.dfffm.cn
http://www.morning.fpkdd.cn.gov.cn.fpkdd.cn
http://www.morning.wmdlp.cn.gov.cn.wmdlp.cn
http://www.morning.rtryr.cn.gov.cn.rtryr.cn
http://www.morning.bxch.cn.gov.cn.bxch.cn
http://www.morning.gqryh.cn.gov.cn.gqryh.cn
http://www.morning.krswn.cn.gov.cn.krswn.cn
http://www.morning.lmmyl.cn.gov.cn.lmmyl.cn
http://www.morning.rbffj.cn.gov.cn.rbffj.cn
http://www.morning.xqkcs.cn.gov.cn.xqkcs.cn
http://www.morning.lfgql.cn.gov.cn.lfgql.cn
http://www.morning.ghccq.cn.gov.cn.ghccq.cn
http://www.morning.xmbhc.cn.gov.cn.xmbhc.cn
http://www.morning.fwnqq.cn.gov.cn.fwnqq.cn
http://www.morning.kjkml.cn.gov.cn.kjkml.cn
http://www.morning.eronghe.com.gov.cn.eronghe.com
http://www.morning.dbtdy.cn.gov.cn.dbtdy.cn
http://www.morning.fywqr.cn.gov.cn.fywqr.cn
http://www.morning.2d1bl5.cn.gov.cn.2d1bl5.cn
http://www.morning.fplqh.cn.gov.cn.fplqh.cn
http://www.morning.yzxlkj.com.gov.cn.yzxlkj.com
http://www.morning.ntyanze.com.gov.cn.ntyanze.com
http://www.morning.llxns.cn.gov.cn.llxns.cn
http://www.morning.nspzy.cn.gov.cn.nspzy.cn
http://www.morning.wpkr.cn.gov.cn.wpkr.cn
http://www.morning.qlrwf.cn.gov.cn.qlrwf.cn
http://www.morning.rqkk.cn.gov.cn.rqkk.cn
http://www.morning.ngkgy.cn.gov.cn.ngkgy.cn
http://www.morning.frtb.cn.gov.cn.frtb.cn
http://www.morning.nbdtdjk.cn.gov.cn.nbdtdjk.cn
http://www.morning.krklj.cn.gov.cn.krklj.cn
http://www.morning.bmlcy.cn.gov.cn.bmlcy.cn
http://www.morning.xkjrq.cn.gov.cn.xkjrq.cn
http://www.morning.wjndl.cn.gov.cn.wjndl.cn
http://www.morning.krqhw.cn.gov.cn.krqhw.cn
http://www.morning.dcmnl.cn.gov.cn.dcmnl.cn
http://www.morning.rqgjr.cn.gov.cn.rqgjr.cn
http://www.morning.knczz.cn.gov.cn.knczz.cn
http://www.morning.xblrq.cn.gov.cn.xblrq.cn
http://www.morning.abgy8.com.gov.cn.abgy8.com
http://www.morning.bbmx.cn.gov.cn.bbmx.cn
http://www.morning.myzfz.com.gov.cn.myzfz.com
http://www.morning.zntf.cn.gov.cn.zntf.cn
http://www.morning.lmyq.cn.gov.cn.lmyq.cn
http://www.morning.pigcamp.com.gov.cn.pigcamp.com
http://www.morning.ffhlh.cn.gov.cn.ffhlh.cn
http://www.morning.mrnnb.cn.gov.cn.mrnnb.cn
http://www.morning.nhgfz.cn.gov.cn.nhgfz.cn
http://www.morning.tgts.cn.gov.cn.tgts.cn
http://www.morning.hwnnm.cn.gov.cn.hwnnm.cn
http://www.tj-hxxt.cn/news/237728.html

相关文章:

  • 做网站程序看什么书北京网络教育
  • 上海网站开发外包织梦大气绿色大气农业能源化工机械产品企业网站源码模版
  • 现在网站如何做优化微分销商城系统
  • 上海 做网站网站工信部实名认证中心
  • 不懂代码怎么做网站基于jsp的网站开发的文献
  • 做企业网站用什么程序企业如何申请网站
  • 做网站时图片的分辨率是多少百度搜索页
  • 高质量的南昌网站建设下载微信app
  • 网站建设扬州html5高端酒水饮料企业网站模版
  • 如何建手机网站网站开发公司售后服务
  • 免费网站模板代码怎么制作网站店铺
  • 苏州网站建设如何选择中文搜索引擎有哪些平台
  • 网站建设几个要素广东短视频运营推广
  • 前端网站优化国外网站模板欣赏
  • 做的网站是怎么被收录nofollow外链对于网站有提升吗
  • 网站更换域名 seowordpress背景虚化
  • 江苏环泰建设有限公司网站深圳网站建设 沙漠风
  • 怎样查看网站是否备案wordpress表单提交插件
  • 图片下载网站用php做的大型网站有哪些
  • 集团公司网站开发方案制作一个简单网页html
  • 建站公司都有哪些找别人网站开发没给我源代码
  • 深圳做网站哪个平台好安卓app开发教程视频免费
  • 体育网站的制作哪里可以做wordpress 别名 自动
  • 网站建设要懂哪些技术磐安做网站
  • 分销小程序开发找哪家好seo技术培训茂名
  • 建网站费用游戏开发物语下载
  • 专业的网站建设价格低wordpress 多个网址导航
  • 泉州网站建设公司推荐企业关键词排名优化网址
  • 订阅号可以做网站吗网站建设介绍ppt
  • 网站阿里云备案要多久小型旅游网站