All Projects → luizalabs → ramos

luizalabs / ramos

Licence: MIT license
Generic backend pool

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to ramos

Poolboy
A hunky Erlang worker pool factory
Stars: ✭ 1,363 (+4443.33%)
Mutual labels:  pool
Rainbowminer
GPU/CPU Mining script with intelligent profit-switching between miningpools, algorithms, miners, using all possible combinations of devices (NVIDIA, AMD, CPU). Features: actively maintained, uses the top actual miner programs (Bminer, Ccminer, Claymore, Dstm, EnemyZ, Sgminer, T-rex and more) easy setup wizard, webinterface, auto update.
Stars: ✭ 158 (+426.67%)
Mutual labels:  pool
Sfpowerkit
A Salesforce DX Plugin with multiple functionalities aimed at improving development and operational workflows
Stars: ✭ 214 (+613.33%)
Mutual labels:  pool
Safeobjectpool
应用场景:连接池,资源池等等
Stars: ✭ 108 (+260%)
Mutual labels:  pool
Mobc
A generic connection pool for Rust with async/await support
Stars: ✭ 141 (+370%)
Mutual labels:  pool
Fastdep
Fast integration dependencies in spring boot.是一个快速集成依赖的框架,集成了一些常用公共的依赖。例:多数据源,Redis,JWT...
Stars: ✭ 178 (+493.33%)
Mutual labels:  pool
Earl
Service Objects for Crystal (Agents, Artists, Supervisors, Pools, ...)
Stars: ✭ 89 (+196.67%)
Mutual labels:  pool
ESPHome-Devices
A collection of ESPHome custom components, configuration files, and custom code for my various ESP8266/ESP32 devices that integrate with Home Assistant.
Stars: ✭ 83 (+176.67%)
Mutual labels:  pool
Puppeteer Cluster
Puppeteer Pool, run a cluster of instances in parallel
Stars: ✭ 2,175 (+7150%)
Mutual labels:  pool
Ok ip proxy pool
🍿爬虫代理IP池(proxy pool) python🍟一个还ok的IP代理池
Stars: ✭ 196 (+553.33%)
Mutual labels:  pool
Gossdb
ssdb client for go with pool surport
Stars: ✭ 117 (+290%)
Mutual labels:  pool
Smproxy
Swoole MySQL Proxy 一个基于 MySQL 协议,Swoole 开发的MySQL数据库连接池。 A MySQL database connection pool based on MySQL protocol and Swoole.
Stars: ✭ 1,665 (+5450%)
Mutual labels:  pool
Opq
A simple, in-memory queue with worker pooling and rate limiting in Elixir.
Stars: ✭ 178 (+493.33%)
Mutual labels:  pool
Phantom Pool
PhantomJS resource pool based on generic-pool
Stars: ✭ 102 (+240%)
Mutual labels:  pool
Worker pool
Erlang worker pool
Stars: ✭ 239 (+696.67%)
Mutual labels:  pool
Pool
General Purpose Connection Pool for GRPC,RPC,TCP Sevice Cluster
Stars: ✭ 98 (+226.67%)
Mutual labels:  pool
Classic Pool Game
Classic 8 Ball pool game written in JavaScript
Stars: ✭ 177 (+490%)
Mutual labels:  pool
neth-proxy
Stratum <-> Stratum Proxy and optimizer for ethminer
Stars: ✭ 35 (+16.67%)
Mutual labels:  pool
python-PooledProcessMixIn
Fast Concurrent Pool of preforked-processes and threads MixIn for python's socket server
Stars: ✭ 31 (+3.33%)
Mutual labels:  pool
Swoft Im
基于swoft-cloud的微服务架构,最小化拆分粒度,PHP7、多进程、协程、异步任务、mysql连接池、redi连接池、rpc连接池、服务治理、服务注册与发现、Aop切面、全注解
Stars: ✭ 189 (+530%)
Mutual labels:  pool

Ramos

https://readthedocs.org/projects/ramos/badge/?version=latest&style=flat https://travis-ci.org/luizalabs/ramos.svg?branch=master

Generic backend pool

Setup

pip install ramos

Development setup

make install

Usage

import ramos

ramos.configure(pools={
    'backend_type': [
        'path.to.backend_a',
        'path.to.backend_b',
    ]
})

Integrations

Ramos can uses Django or Simple Settings to get backends configurations if set settings.POOL_OF_RAMOS:

POOL_OF_RAMOS = {
    'backend_type': [
        'path.to.backend_a',
        'path.to.backend_b',
    ]
}

Backend Implementations

from ramos.mixins import ThreadSafeCreateMixin


class BackendA(ThreadSafeCreateMixin):
    id = 'backend_a'
    def say(self):
        return 'A'


class BackendB(ThreadSafeCreateMixin):
    id = 'backend_b'
    def say(self):
        return 'B'

Backend Pool

from ramos.pool import BackendPool


class BackendTypePool(BackendPool)
    backend_type = 'backend_type'


backends = BackendTypePool.all()

for backend in backends:
    print(backend.say())


# backend_a = BackendTypePool.get('backend_a')
# backend_b = BackendTypePool.get('backend_b')
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].