首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在不“重启”进程的情况下重新加载sails.js应用程序?

在不重启进程的情况下重新加载sails.js应用程序,可以通过以下步骤实现:

  1. 使用sails-hook-autoreload插件:sails-hook-autoreload是一个Sails.js的插件,可以在开发环境中实现自动重新加载应用程序。该插件会监视应用程序的文件变化,并在检测到变化时重新加载应用程序。
  2. 安装sails-hook-autoreload插件:在命令行中进入项目目录,并执行以下命令安装sails-hook-autoreload插件:
  3. 安装sails-hook-autoreload插件:在命令行中进入项目目录,并执行以下命令安装sails-hook-autoreload插件:
  4. 配置sails.config.autoreload参数:在Sails.js的配置文件(config/custom.js或config/env/development.js)中,添加以下配置参数:
  5. 配置sails.config.autoreload参数:在Sails.js的配置文件(config/custom.js或config/env/development.js)中,添加以下配置参数:
    • active:设置为true启用自动重新加载功能。
    • usePolling:设置为false使用文件系统的原生事件监听功能。
    • dirs:指定需要监视的目录,例如模型、控制器和本地化文件目录。
  • 启动应用程序:在命令行中执行以下命令启动Sails.js应用程序:
  • 启动应用程序:在命令行中执行以下命令启动Sails.js应用程序:
  • 此时,sails-hook-autoreload插件会监视指定的目录,并在文件变化时自动重新加载应用程序。

请注意,sails-hook-autoreload插件仅在开发环境中建议使用,不建议在生产环境中使用。在生产环境中,可以使用其他部署和管理工具来实现应用程序的平滑重启。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

2021 年最值得使用 Node.js 框架

「Nest.js 可以被用于:」 编写更清晰和可重用代码。 编写具有更高层次结构代码,拦截器、过滤器、管道等; 编写可扩展、可测试和松散型应用程序。...在应用程序中添加“实时”能力。 支持自动重新连接 出色速度和可靠性 即时通讯和聊天 「什么时候使用 Socket.io:」 Socket.io 是最好基于事件实时双向通信工具之一。...它为编写服务器端 Web 应用程序提供了一个稳定生态系统,以让开发者专注于业务需求,最终确定选择或排除哪个包。...它还具有实时功能支持 「什么时候使用 Sails.js:」 任何想要一个模拟 MVC 模式 Node.js 框架( Laravel 和 Ruby on Rails)、想要实现现代应用架构,并构建以数据为中心...API 和实时应用开发者都应该在他们下一个项目中使用 Sails.js

6.5K30

PyTorch 分布式之弹性训练(1) --- 总体思路

难点3:如何捕获单个进程训练失败。 如何在单个节点上管理所有训练进程,从而当某个进程发生错误时候,可以捕获其失败,或者重试或者重启进程。 难点4:如何与现有训练代码集成。...相反,PET 尝试维护工作进程数量,使它们保持在作业所需 [ min , max ] 范围内。应用编写者负责从现有可用还原点文件加载重新启动。...应用编写者可以任意使用torch.save 和 torch.load 或更高层次框架PyTorch Lightening 进行处理。...我们期望通过分布式启动器启动分布式训练作业可以通过弹性代理无缝启动,无需更改或最小化代码更改。唯一区别是在后一种情况下应用程序将能够在出现某些故障情况下依然取得进展。...难点3:如何捕获单个进程训练失败,如何在单个节点上管理所有训练进程。 TE答案是:每个代理进程只负责管理该节点一组本地工作进程,并与本作业其他节点上弹性代理一起协调来确定进程组成员身份变化。

1.5K20

分享4个Linux中Node.js进程管理器

它允许您监视正在运行服务,它有助于执行常见系统管理任务(例如重新启动失败,停止,重新加载配置而无需停机,修改环境变量/设置,显示性能指标等等)。...应用程序日志始终是生产环境中关键,在这方面,PM2允许您轻松管理应用程序日志。它提供了分别处理和显示日志不同方式和格式。您可以实时显示日志,刷新日志,并在需要时重新加载日志。...重要是,PM2支持启动脚本,您可以将其配置为在预期或意外计算机重新启动时自动启动进程。它还支持在当前目录或其子目录中修改文件时自动重新启动应用程序。...image.png 用于NodejsStrongLoop PM进程管理器 它支持应用程序监视(查看性能指标,事件循环时间、CPU和内存消耗)、多主机部署、集群模式、零停机应用程序重启和升级、故障时自动进程重启以及日志聚合和管理...为Node.js服务器创建服务文件后,可以启动它,启用它以在系统引导时自动启动,检查其状态,重新启动(停止并再次启动它)或重新加载其配置,甚至像任何其他系统服务一样停止它。

3K61

使用pm2部署node生产环境

再来看看使用pm2可拥有的能力: 日志管理;两种日志,pm2系统日志与管理进程日志,默认会把进程控制台输出记录到日志中; 负载均衡:PM2可以通过创建共享同一服务器端口多个子进程来扩展您应用程序...这样做还允许以零秒停机时间重新启动应用程序。 终端监控:可以在终端中监控应用程序并检查应用程序运行状况(CPU使用率,使用内存,请求/分钟等)。...pm2 reload app.js //重新启动所有进程,0秒重启,始终保持至少一个进程在运行 pm2 gracefulReload all //以群集模式重新加载所有应用程序...true,易导致无限重启,因为日志文件在变化,需要排除对其监听 merge_logs: true, //集群情况下,可以合并日志 } ], deploy:...exec_mode:应用程序启动模式,这里设置是cluster_mode(集群),默认是fork 16. autorestart:启用/禁用应用程序崩溃或退出时自动重启,默认为true, 发生异常情况下自动重启

3.9K40

微服务架构之Spring Boot(十六)

20.2自动重启 只要类路径上文件发生更改,使用 spring-boot-devtools 应用程序就会自动重新启动。...请注意,某些资源(静态资产和视图 模板)无需重新启动应用程序。 触发重启 由于DevTools监视类路径资源,因此触发重新启动唯一方法是更新类路径。导致更新类路径方式取决于您使用IDE。...DevTools依赖于应用程序上下文关闭钩子来在重启期间关闭它。...更改类(例如,来自第三方jar类)将加载到基 类加载器中。您正在积极开发类 将加载重新启动加载器中。重新启动应用程序时,将重新启动重新启动加载器并创建一个新加载器。...如果您发现重新启动对于您应用程序来说不够快或遇到类加载问题,您可以考虑从ZeroTurnaround 重新加载JRebel等技术 。这些工作 通过在加载类时重写类以使它们更适合重新加载

47410

进程管理:通过PM2来管理Node、PHP CLI等应用运行

同时还支持如下一些启动参数: # 指定应用程序名称,--name # 当文件更改时观察并重新启动应用程序,--watch # 设置应用程序重新加载内存阈值,--max-memory-restart...命令,重新加载所有日志 进程操作相关: pm2 stop all命令,停止所有进程 pm2 restart all命令,重新启动所有进程 pm2 reload all命令,将0秒停机时间重新加载(适用于网络应用程序...命令,启动进程而不自动重新启动 3.重启和恢复 pm2 startup: 此命令将创建一个启动脚本,以便在系统启动时自动启动PM2进程管理器。....重启策略 在指定时间点重新启动应用程序 当文件发生更改时重新启动应用程序应用程序达到内存阈值时重新启动 延迟启动和自动重启 默认情况下禁用自动重启应用程序始终使用PM2重新启动)当崩溃或退出时...以特定指数递增时间自动重新启动应用程序 监视文件发生改变: # 当前目录或其子目录中文件被修改时,PM2 可以自动重启应用程序: $ pm2 start app.js --watch 到达内存上限时

1.4K40

何在 Linux 中列出 Systemd 下所有正在运行服务

Linux系统提供多种系统服务(进程管理、登录、syslog、cron等)和网络服务(远程登录、电子邮件、打印机、虚拟主机、数据存储、文件传输、域名解析等) (使用 DNS)、动态 IP 地址分配(...Linux 支持不同方式来管理(启动、停止、重新启动、在系统启动时启用自动启动等)服务,通常是通过进程或服务管理器。...在本指南[1]中,我们将演示如何在 Linux 中列出 systemd 下所有正在运行服务。...其中标志 -l 表示打印所有侦听套接字,-t 显示所有 TCP 连接,-u 显示所有 UDP 连接,-n 表示打印数字端口号(而不是应用程序名称),-p 表示显示应用程序名称。...在这种情况下进程 zabbix_agentd 正在侦听端口 10050。

25220

多图深入理解 Redis

主要来说,Redis 是一个内存数据库,用作另一个“真实”数据库( MySQL 或 PostgreSQL)前面的缓存,以帮助提高应用程序性能。...如果在重启时启用了持久化,它会将 RDB 快照或 AOF 中所有数据加载回内存,然后实例可以支持新客户端请求。 话虽如此,让我们看看你可能会用到更多分布式 Redis 设置。...我认为这是设置 Redis 一种可接受方式。在重启情况下,请记住如果两者都启用,Redis 将使用 AOF 来重建数据,因为它是最完整。...Forking 现在我们了解了持久化类型,让我们讨论一下我们如何在像 Redis 这样单线程应用程序中实际执行它。...Redis 是一个分配了大量内存进程,那么它如何在耗尽内存情况下进行复制呢? 当你 fork 一个进程时,父进程和子进程共享内存,并且在该子进程中 Redis 开始快照(Redis)进程

59630

图解Redis

主要来说,Redis 是一个内存数据库,用作另一个 “真实” 数据库( MySQL 或 PostgreSQL)前面的缓存,以帮助提高应用程序性能。...如果在重启时启用了持久化,它会将 RDB 快照或 AOF 中所有数据加载回内存,然后实例可以支持新客户端请求。 话虽如此,让我们看看你可能会用到更多分布式 Redis 设置。...我认为这是设置 Redis 一种可接受方式。在重启情况下,请记住如果两者都启用,Redis 将使用 AOF 来重建数据,因为它是最完整。...Forking 现在我们了解了持久化类型,让我们讨论一下我们如何在像 Redis 这样单线程应用程序中实际执行它。...Redis 是一个分配了大量内存进程,那么它如何在耗尽内存情况下进行复制呢? 当你 fork 一个进程时,父进程和子进程共享内存,并且在该子进程中 Redis 开始快照(Redis)进程

41120

Spring Boot DevTools使用教程

自动重启 每当类路径中文件发生更改时,DevTools会自动重新启动正在运行应用程序,并应用新更改。在本地开发时,这可能很有价值,因为您不需要手动重新部署应用程序。...,Spring DevTools使用两个类加载器 - base和restart。base类加载加载更改类。你正在使用类由restart类加载加载。...每当触发重启时,都会重新启动并重新创建restart加载器。这样重新启动应用程序速度比平常快得多,并且可以使用JRebel等工具作为动态类重新加载替代方法。...它不仅可用于开发应用程序前端(如果将其作为Spring应用程序工件一部分进行分发),还可用于监视和重新加载REST API输出。...如果发生此类冲突,您可以通过设置禁用自动重启: spring.devtools.restart.enabled=false 将不再触发重启。但是,仍将使用重新启动类加载器。

11.2K31

eBay 为何以及如何转向 OpenTelemetry

守护进程集允许用户在 Kubernetes 集群每个节点上部署给定工作负载。然而,我们在一次内部黑客周期间进行了一项实验,得出了一些令人惊讶结论,并促使我们重新考虑守护进程使用。...然而,在那里添加注解意味着要重启 Pod。如果更改目的是针对框架上正在测量指标,并且在每个已部署应用程序上都可用,那么这是不可取。...每次有新 Pod 启动时,都必须把这些配置推送给它,并在 Pod 死亡时进行清理。然而,OpenTelemetry Collector 有一个严重缺陷:不能动态地重新加载配置。...为了方便动态地重新加载管道,我们提出了一个“filereloadreceiver”,它可以查看一个包含“局部管道”描述文件目录,这些局部管道可以插入到收集器整个管道中。...小   结 过去 5 年,eBay 遇到了几次需求激增,迫使我们对一些传统观念进行重新思考。我们从守护进程集入手,发现在规模比较大时,它成本过高,而且也不可靠。

95030

Spring Boot 2.0 系列(四):开发者工具

注意,某些资源(静态资源和视图模板)不需要重新启动应用程序。 由于DevTools监控类路径资源,触发重新启动惟一方法是更新类路径。使类路径更新方式取决于您使用IDE。...这种方法意味着应用程序重新启动通常比“冷启动”快得多,因为基类加载程序已经可用并填充。 如果发现热部署对应用程序来说不够快,或者遇到了类加载问题,可以考虑热加载技术,零周转期JRebel。...日志记录变化 默认情况下,每次应用程序重新启动时,都会记录显示变化报告。报告显示了应用程序自动配置更改,添加或删除bean和设置配置属性。...在大多数情况下,我们可以在 application.properties设置此属性(这样做仍然初始化重启加载器,但它不注意文件更改)。...但是,它有时会导致类加载问题。 默认情况下,IDE中任何打开项目都装载“重启”类加载器,任何常规.jar文件都装载“基”类加载器。

96330

systemctl命令

-i, --ignore-inhibitors: 当系统关闭或请求睡眠状态时,忽略抑制器锁,应用程序可以建立抑制器锁,以避免某些重要操作CD刻录等被系统关闭或睡眠状态中断,任何用户都可以使用这些锁,特权用户可以重写这些锁....: 启动(激活)命令行上指定一个或多个单元,请注意全局模式在当前已加载单位列表上运行,通常处于活动状态且未处于故障状态单元不会被加载,并且不会通过任何模式进行匹配,另外在实例化单元情况下,systemd...Manager Lifecycle Commands daemon-reload: 重新加载systemd manager配置,这将重新加载所有单元文件并重新创建整个依赖关系树,在重新加载守护进程时,systemd...Restart: 这个值用于指定在什么情况下需要重启服务进程,常用值有no、on-success、on-failure、on-abnormal、on-abort和always,默认值为no,即不会自动重启服务...RestartSec: 如果服务需要被重启,这个参数值为服务被重启等待秒数。 ExecReload: 重新加载服务所需执行主要命令。 Environment: 为服务添加环境变量。

1.6K20

【Python】APScheduler简介

一般情况下,你应用程序只会有一个调度器在运行。...如果你总是再应用程序开始时候重新创建你作业,那么你适合用默认选项(MemoryJobStore)。...但如果你需要持久化你作业以面对 scheduler 重启或者应用程序崩溃情况,那么你选择通常需要考虑你在程序运行环境中所使用工具。...重要事项 如果你调度 job 在一个持久化 job store 里,当你初始化你应用程序时,你必须为 job 定义一个显式 ID 并使用replace_existing=True,否则每次你应用程序重启时你都会得到那个...为了修复这个问题,你需要使用--enalbe-threads选项来重新启用 GIL 。 我如何在一个或多个工作进程中共享独立 job store 简短回答:不可以。

2.6K20

在腾讯云CVM上安装Apache

在本文中,我们将介绍如何在腾讯云Ubuntu 18.04服务器上安装Apache Web服务器。 必备条件 在开始本文之前,腾讯云默认使用是sudo非root用户。...输入以下内容列出应用程序配置ufw sudo ufw app list 您将看到应用程序配置文件列表: OutputAvailable application: Apache Apache Full...它还包括有关重要Apache文件和目录位置一些基本信息。 第4步 - 管理Apache进程 现在您已经启动并运行了Web服务器,让我们来看一些基本管理命令。...: sudo systemctl restart apache2 如果您只是进行配置更改,Apache通常可以在丢弃连接情况下重新加载。...Apache在启动或重新加载以编译完整配置时读取此目录中配置文件和链接。

3.7K70

Android常见问题及开发经验总结(四)

这个说来话长 ,简单来说 是因为静态变量和类一样都是在进程加载时候被加载,在进程结束时候被结束。...而android对于进程和内存管理和PC不一样,在资源足够情况下,android会重启被杀掉进程。也就是说 静态变量值不可靠,也可以理解为内存值不可靠。...AIDL是一个缩写,全称是Android Interface Definition Language,也就是Android接口定义语言,设计这门语言目的是为了实现进程间通信,尤其是在涉及多进程并发情况下进程间通信...Activity、Content Provider、Broadcast和Service 其中Activity可以跨进程调用其他应用程序Activity;Content Provider可以跨进程访问其他应用程序数据...(以Cursor对象形式返回),当然,也可以对其他应用程序数据进行增、删、改操 作;Broadcast可以向android系统中所有应用程序发送广播,而需要跨进程通讯应用程序可以监听这些广播;Service

41430

窥探Nginx内部实现:如何为性能和规模进行设计

NGINX使用已优化可预测进程模型用于可用硬件资源: 主进程执行特权操作,读取配置和绑定到端口,然后创建少量子进程(接下来三种类型)。...当主进程收到SIGHUP时,它会执行两件事情: 重新加载配置并分配一组新工作者进程。这些新工作者进程立即开始接受连接并处理流量(使用新配置设置)。...一旦所有连接都关闭,旧工作者进程就会退出。 这种重新加载过程可能导致CPU和内存使用量小幅上升,但与活动连接资源负载相比,通常是不可察觉。...您可以每秒重新加载配置多次(而且许多NGINX用户都这么做)。极少情况下会发生当有许多代工作者进程等待连接关闭时会出现问题,但即使是这样,问题也会很快得到解决。...NGINX二进制升级过程实现了高可用性 - 您可以即时升级软件,而不会出现连接中断,停机或服务中断. ? 二进制升级过程与配置优雅重新加载方法相似。

96250

【玩转Redis面试第3讲】一次性将Redis RDB持久化和AOF持久化讲透

AOF持久化:记录每次对服务器写操作,当服务器重启时候会重新执行这些命令来恢复原始数据,AOF命令以redis协议追加保存每次写操作到文件末尾。...同时开启RDB和AOF:你也可以同时开启两种持久化方式,在这种情况下当redis重启时候会优先载入AOF文件来恢复原始数据,因为在通常情况下AOF文件保存数据集要比RDB文件保存数据集要完整。...AOF持久化 AOF(append only file)持久化:以独立日志方式记录每次写命令, 重启时再重新执行AOF文件中命令达到恢复数据目的。...AOF工作流程操作:命令写入 (append)、文件同步(sync)、文件重写(rewrite)、重启加载 (load)。 图片 (1)所有的写入命令会追加到aof_buf(缓冲区)中。...(4)当Redis服务器重启时,可以加载AOF文件进行数据恢复。

710147

android:persistent和android:priority区别,对进程优先级有什么影响?

这两个属性对进程优先级没有直接影响。进程优先级是由Android系统动态管理,根据当前运行应用程序活动程度和资源需求来进行调整。...发送广播重启Service:在ServiceonDestroy()方法中发送一个自定义广播,在收到广播后重新启动Service。...监听系统广播判断Service状态:通过监听系统广播,手机重启、界面唤醒、应用状态改变等,判断Service是否存活。 多个App相互拉活:不同App之间相互绑定、互相拉活。...确实,通过将自己应用作为系统应用(安装目录为/system/apk/),并设置android:persistent="true"属性,可以实现持久性,即应用会在系统启动时加载,并在异常出现时自动重新启动...对于persistent应用,当应用进程意外终止时,AMS会尝试重新启动该应用进程,以保证应用持久性。

93610
领券