> For the complete documentation index, see [llms.txt](https://docs.snowkill.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.snowkill.net/deployment/best-practices.md).

# Best practices

{% hint style="warning" %}
This page is "work-in-progress", it will be updated soon
{% endhint %}

* For best possible results, consider running SnowKill every minute.
* For ease of maintenance, you may run SnowKill as basic serverless application (AWS Lambda, Fargate, etc.). One CPU core and a few hundred Mb of RAM should be sufficient.
* For better security, consider using private key authentication method for SnowKill [administration user](/implementation-details/administration-user.md). Try to avoid using password for users with programmatic access.
* Consider using an additional queue (SNS, SQS, Pub/Sub, etc.) for notifications to avoid losing messaged if your notification channel is temporary not available.
* Consider using OLTP database for log storage (e.g. [Postgres table](/storage/built-in-storages/postgres-table.md)) instead of [Snowflake table](/storage/built-in-storages/snowflake-table.md). Snowflake table helps to get you started, but it is not the most efficient setup for production.
