Якщо я використовую щось на зразок гітоліту для управління доступом, наскільки добре масштабується санкціонований_кейс? Значить, якщо я скажу 50 000 користувачів, якою буде продуктивність (я здогадуюсь, не дуже добре). Які альтернативи?
Оновлення: я вирішив зробити тестування сам (що я повинен був зробити в першу чергу). Я написав простий скрипт, щоб генерувати SSH-ключі та додавати їх у файл дозволених ключів. Мій комп'ютер не такий швидкий, тому я згенерував лише 8 061 клавіш, а потім додав власну до кінця, файл у кінцевому підсумку становив 3,1 Мб. Потім я додав сховище git з одним файлом і тричі клонував git:
With 8,061 keys (Mine is at the end of the file)
real 0m0.442s
real 0m0.447s
real 0m0.458s
With just a single key:
real 0m0.248s
real 0m0.264s
real 0m0.255s
Виступ набагато кращий, ніж я думав, що це буде. Мені все ще дуже цікаві будь-які альтернативи, які можуть бути швидше ефективнішими для великої групи ключів 50 000+.
authorized_keys
Файл з 50k ключами тільки близько 25Мб. Напевно, це буде повністю кешоване в буфери файлової системи. Я б уявив, що час пошуку ключа у файлі був би карбований часом фактичного використання цього ключа для автентифікації користувача.