我的 PowerShell 控制台启动时间很慢(等待时间总是超过 5 秒),并且希望获得有关故障排除步骤的建议,以找出瓶颈可能在哪里?
我已经读过,对于运行脚本来说,-NoProfile对于防止模块等加载很重要,但一般来说,我们应该如何找出导致事情变慢的原因?我没有安装很多模块,我知道从 PowerShell 3.0 开始,模块只是在启动时引用而不是完全加载(模块只有在调用给定模块的函数时才完全加载),所以我无法理解为什么启动一个裸控制台需要 5 秒以上(我的 $profile 也是空的)。
关于调试控制台启动过程的各个步骤的任何建议将不胜感激?另外,是否可能存在一些 Microsoft 或第三方工具来调试控制台启动过程中的各个步骤以查找瓶颈?
作为 Jetpack 的一部分,现在有一个库来处理应用程序启动。具体来说,您可以为任何依赖项(显然是使用 ContentProvider 进行初始化的依赖项)实现组件初始化程序,以加快应用程序启动过程。
我的问题是我应该如何知道我的哪些依赖项值得拥有自己的组件初始值设定项?我是否需要猜测,例如,WorkManager 使用 ContentProvider 并需要自己的组件初始值设定项,而不同的依赖项则不需要?
谢谢。
android startup app-startup android-contentprovider android-jetpack
微软的BizSpark是一个很好的程序,可以帮助初创公司开展工作.我想知道Adobe或其他公司是否有类似的计划?
我在Windows服务中托管了一个WCF服务,我将其设置为"自动",因此它将在服务器启动时自动启动.服务端点是MSMQ支持的.
当我手动启动服务时,一切都很好.但是当服务在启动时启动时,我得到一个MSMQ异常:
System.TypeInitializationException: The type initializer for
'System.ServiceModel.Channels.Msmq' threw an exception. --->
System.ServiceModel.MsmqException: The version check failed with the error:
'The Message Queuing service is not available (-1072824309, 0xc00e000b)'. The
version of MSMQ cannot be detected All operations that are on the queued channel
will fail. Ensure that MSMQ is installed and is available.
at System.ServiceModel.Channels.MsmqQueue.GetMsmqInformation
(Version& version, Boolean& activeDirectoryEnabled)
at System.ServiceModel.Channels.Msmq..cctor()
--- End of inner exception stack trace ---
Run Code Online (Sandbox Code Playgroud)
看起来MSMQ还没有准备好在服务开始之前使用......有解决方案吗?
如何在Windows/Linux/MacOS上的系统启动时运行Java应用程序?
欢迎任何JNA/JNI的实施.
时不时地,我认为这将是很好用clojure的shell脚本,但大约900毫秒的启动时间太慢.然后我会google startpage for"nailgun clojure",但唯一显示的结果是针对vimclojure这样的特殊情况.那时我假装没有时间,转向awk更快启动的更多病房语言.
那么,怎样才能nailgun加快clojure的启动时间呢?
我们正在尝试为AppConfig.ready函数的行为编写一个自动化测试,我们将其用作Django应用程序加载时运行代码的初始化挂钩.我们的ready方法实现使用我们需要在测试中覆盖的Django设置,当然我们正在尝试使用override_settings装饰器来实现这一点.
但是有一个障碍 - 当测试运行时,在ready执行该功能的时候,设置覆盖没有启动(它仍然使用原始值settings.py).是否有一种方法可以在ready调用函数时以覆盖方式应用的方式覆盖设置?
一些代码来演示此行为:
settings.py
MY_SETTING = 'original value'
Run Code Online (Sandbox Code Playgroud)
dummy_app/__ init__.py
default_app_config = 'dummy_app.apps.DummyAppConfig'
Run Code Online (Sandbox Code Playgroud)
dummy_app/apps.py
from django.apps import AppConfig
from django.conf import settings
class DummyAppConfig(AppConfig):
name = 'dummy_app'
def ready(self):
print('settings.MY_SETTING in app config ready function: {0}'.format(settings.MY_SETTING))
Run Code Online (Sandbox Code Playgroud)
dummy_app/tests.py
from django.conf import settings
from django.test import TestCase
from django.test.utils import override_settings
@override_settings(MY_SETTING='overridden value')
@override_settings(INSTALLED_APPS=('dummy_app',))
class AppConfigTests(TestCase):
def test_to_see_where_overridden_settings_value_is_available(self):
print('settings.MY_SETTING in test function: '.format(settings.MY_SETTING))
self.fail('Trigger test output')
Run Code Online (Sandbox Code Playgroud)
产量
====================================================================== …Run Code Online (Sandbox Code Playgroud) 我正在实现 Quarkus 服务器。服务器启动时,应启动一个(永无止境的)后台进程。
@ApplicationScoped我知道我可以使用实现以下功能的 bean
来观察启动事件void onStart(@Observes StartupEvent ev):
但是启动后台进程的最佳方式是什么?有限制吗?在 J2EE 中,不应创建线程,而应使用ManagedExecutorService带有注释方法的 EJB @Asynchronous。
Quarkus 里有类似的东西吗?我只找到了调度程序注释(这很好,但我只想在开始时启动一个进程一次)。
那么我可以只创建线程吗?或者只是把我的无限代码放进去void onStart(@Observes StartupEvent ev)?
谢谢
我正在为 .Net Core 项目使用“FluentValidation.AspNetCore”库(版本=“8.6.2”)。
我想做的是使用类似这样的东西(这就是我现在使用的)在 Startup.cs 类中自动注册所有验证器:
services.AddControllers().AddFluentValidation(fv => fv.RegisterValidatorsFromAssemblyContaining<Startup>());
Run Code Online (Sandbox Code Playgroud)
但问题是我的验证器将被移动到另一个程序集(客户端需要),所以我不能使用 Startup 作为注册的参考。
有没有一种方法可以做到这一点,而不必一一注册验证器?
startup ×10
java ×2
.net-core ×1
adobe ×1
android ×1
app-startup ×1
background ×1
c# ×1
clojure ×1
console ×1
django ×1
jna ×1
logging ×1
msmq ×1
nailgun ×1
powershell ×1
python ×1
quarkus ×1
registration ×1
shell ×1
spring ×1
spring-boot ×1
unit-testing ×1
wcf ×1
worker ×1