Я строю сервер Флазы в Python и у меня есть класс CustomRedis с Set (Key, значение) и get (key) Методы.
Этот класс добавляет Префикс для конкретного пользователя перед хранением клавиш в базе данных Redis, позволяя пользовательскому хранилище данных без использования сеанса Flask по умолчанию. Какой подход рекомендуется?cache = CustomRedis()
def hello_world():
return "Hi " + cache.get("user_pseudo")
Pros: Easy to use, default structure.
Cons: Global variables can lead to concurrency issues.
### Singleton
```python
class SingletonMeta(type):
# See Refactoring for example
class ServiceHelloWorld(metaclass=SingletonMeta):
def __init__(self):
self.cache = CustomRedis()
def hello_world(self):
return "Hi " + self.cache.get("user_pseudo")
< /code>
Pros: лучшее разложение кода с использованием классов.
cons: self.cache долго писать каждый раз. < /p>
static class < / H3>
class ServiceHelloWorld:
cache = CustomRedis()
@staticmethod
def hello_world():
return "Hi " + ServiceHelloWorld.cache.get("user_pseudo")
< /code>
Pros: проще, чем Singleton для реализации.
CONS: ServiceHelloworld долго писать каждый раз. < /p>
Какая структура лучше всего подходит для этот вариант использования? Есть лучшие альтернативы?
Подробнее здесь: https://stackoverflow.com/questions/794 ... -functions
Flask: Должен ли я использовать класс для API Service Indeed of Basics Funds? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Java Service Wrapper во время запуска JAR Application FOM Service Service
Anonymous » » в форуме JAVA - 0 Ответы
- 51 Просмотры
-
Последнее сообщение Anonymous
-