Why Bahmni need so much resources?

Hello, I am new here, I configured Bahmni in my system. its pretty slow, As openmrs service starts whole system slow down and response becomes very slow. I know that recommend is 8Gb ram and quad core processor. But the thing is why system needs this much resource. there is not so heavy load or usage in work day. According to my experience I have dual core, 4 gb server, windows based server, and it has more than 2000 users and at any point there are 400 users using system and data is accessed, its web based ERP for entire Technical Institute campus. So my Question is in a hospital there is not large data is transferred(not storing images) than why it needs this much resource? as far as my knowledge linux based systems need less resource than windows based systems.

1 Like

It depends on the requirement and how you want to use Bahmni and how you choose your server architecture. If you want all the modules and configurations in Bahmni, replication switched on from master to slave machines etc… then you need 8GB and quad core processor.

Bahmni (with all the modules) has lot of features irrespective of the hospital usage (though it doesn’t have huge data). For example, the 3 main modules in bahmni elis, mrs, erp talk to each other continuously and each of them have their own databases. Pacs Integration (integration between emr and Digital X-Ray Machines) gives the ability to view Dicom Images. This needs DCM4CHEE server.

For example ELIS, ERP and PACS are on postgresql… Minimum requirements for postgres MRS is on Mysql Database and the memory usages are mentioned here Dc4chee minimum requirements are mentioned here Openerp / odoo system requirements

You can also refer to the survey summary of openmrs implementations

The recommended requirements are mentioned considering all the modules and integrations and also the usage. If you want to use FULL Bahmni with all the configuration along with the data being generated(by hospital) , then you need the server with more resources to support all of the features.

You can choose to switch off unnecessary modules and still run on 4GB server. Please let us know what all modules you want to use from Bahmni, then we can help you turn off other modules that are not needed.


Adding onto Sravanthi’s comment, that Bahmni is composed of many components & services - while they might add up taking more resources than a single monolith, the advantages are reuse of existing open source softwares, ease of development, maintenance, deployment to name a few. If you run just the EMR, you will see noticeable difference. One of our clients use a cloud hosted Bahmni (only EMR), and they serve 100s of concurrent users.

Like Sravanthi mentioned, there are lots of background threads that are continuously working for interaction between systems. For example, if you would reduce the polling intervals of some of the scheduler, you might find that less resources are consumed. We run multiple databases (MySQL & Postgres), because of subsystems dependence; if we could move to one single dbms, we would. Maybe someday we will use just Postgres.

Keeping a balance between modularity, composition and optimization is hard, and Bahmni still has a long way to go.