Альтернатива servicestack.redis
Я сделал менеджер пакетов update-package
Команда для обновления нашего проекта до последних двоичных файлов. Я почти опубликовал его, потому что он прошел все тесты, пока, к счастью, я не нашел проблему, требующую дополнительной отладки.
Мой рот открылся, когда я внезапно увидел это сообщение об исключении:
Достигнут предел свободной квоты для "6000 запросов Redis в час". Пожалуйста, смотрите https://servicestack.net/ чтобы перейти на коммерческую лицензию.
Что если я опубликовал этот сайт? Подобные практики просто отвратительны! Нет консольного предупреждения или чего-либо еще об отсутствии лицензии. Это похоже на распространение в ваших проектах троянского коня с открытым исходным кодом.
Есть ли хорошие альтернативы стэку?
РЕДАКТИРОВАТЬ: Читая все комментарии, я думаю, моя первая реакция была немного сильной. Nuget обновлялся с v3 до v4 автоматически, и, хотя я не заметил каких-либо серьезных изменений, чтение замечаний к выпуску было бы правильным решением вместо того, чтобы ломать другой хороший продукт. При этом, я думаю, что люди обожгут руки на это исключение, так как 6000 запросов будет достаточно, чтобы пройти тесты и опубликовать это катастрофически.
4 ответа
Мы переходим на Booksleeve, который был разработан людьми, которые создали Stackru. До сих пор у нас был очень хороший опыт.
Деньги не в этом проблема (стоимость миграции выше, чем плата за лицензию), мы делаем это потому, что просто не хотим вступать в деловые отношения с компанией с подобными схемами.
(И нет, мы не приняли ни лицензии, ни чего-либо, все, что мы сделали, это git pull
с GitHub.)
Я собираюсь использовать StackExchange.Redis, который был основан на сотрудниках Booksleve от Stack Exchange для очень высокой производительности. Кажется, достаточно хорошо и с активным сообществом.
Их лицензия - MIT, что означает, что вам просто нужно включить их авторское право и лицензию в ваш продукт. (Справедливо)
ServiceStack, включая такие пакеты, как ServiceStack.Redis, становятся коммерчески поддерживаемыми продуктами в версии 4. Возможно, вы использовали версию 3.x пакетов ServiceStack, и NuGet решила обновить вас до версии 4.x.
Существуют ограничения на бесплатное использование библиотек v4. Смотрите это объявление для получения дополнительной информации. Версия 3.x всех продуктов ServiceStack остается открытым исходным кодом; появился новый проект GitHub с информацией о поддержке v3.
Сейчас я бы предложил отменить обновление пакета и установить максимальную версию 3.x в файле конфигурации пакета NuGet, чтобы ваши пакеты NuGet оставались на версии 3.x для производственного кода в краткосрочной перспективе:
<package id="ServiceStack.Xyz" version="3.x.x" allowedVersions="[3,4)" />
Тогда будет безопасно использовать NuGet для обновления ваших пакетов.
Между тем, вы можете посетить https://servicestack.net/ чтобы оценить ваши варианты обновления до версии 4, варианты лицензирования или необходимость придерживаться версии 3.
Мне было очень грустно слышать, что SS будет коммерческим с V4, это меня немного разозлило, но... в любом случае, я думаю, им нужно сохранить свою жизнь. Поэтому я перешел на " https://code.google.com/p/booksleeve/" без всяких жалоб.