... I listed it... but I think JPA will stay there (too many code changes
for probably marginal gain)... but what has an impact is the database
schema itself... too many things are related/joined (even where we have
native SQL)... that one has a real impact.

On Mon, Mar 24, 2025 at 10:19 AM Piotr Wargulak
<pwargu...@soldevelo.com.invalid> wrote:

> Thanks guys for the tips.
> I'll definitely look at the git history and wikis, get my bearings and
> contact some of you about the call.
>
> Although, I must highlight that for now we would like to limit ourselves
> to performance improvements that - with luck - could be solved in days,
> rather than month-long big refactoring with thousands of LoC. :)
>
> @Aleks: Leaving JPA/ORM is an interesting thing, from what we've noticed
> in the SolDevelo's projects the JPA (Hibernate impl) itself is not that
> slow, but rather it's easy to write it slow - the promise that developers
> can forget what relation db is, is a little bit of a lie.
>
> Best regards,
> PiotrW
>
>
>
> On Mon, Mar 24, 2025 at 3:10 AM Aleksandar Vidakovic <
> chee...@monkeysintown.com> wrote:
>
>> I know of two benchmarking efforts, but both are not public.
>>
>> On Sun, 23 Mar 2025, 22:47 Tom Daly, <tdal...@gmail.com> wrote:
>>
>>> Hi Aleks, all.
>>>
>>> Is there a good set of perf benchmarking tools for measuring fineract +
>>> db perf and scalability ?
>>>
>>> thanks
>>> Tom
>>>
>>>
>>>
>>> On 23 Mar 2025, at 3:22 pm, Aleksandar Vidakovic <
>>> chee...@monkeysintown.com> wrote:
>>>
>>> Hi Piotr,
>>>
>>> ... my 2 cents for performance challenges:
>>>
>>>    - modularity: we have a tendency to not respect domain boundaries...
>>>    which leads to...
>>>    - database structure (read: too many relationships)
>>>    - JPA/ORM: convenient, but comes with a price; a lot of newer
>>>    "modules" come with native SQL instead... which leads to other challenges
>>>    (not type safe, unreadable code due to string concatenation, security
>>>    issues again through string concatenation...); QueryDSL would be great
>>>    here...
>>>    - manual JSON parsing: we should be using Jackson, but in fact we
>>>    use Google GSON with a lot of boilerplate  handcrafted code
>>>    - synchronous execution: virtual threads might help; there is a new
>>>    proposal for handling write requests, see
>>>    https://issues.apache.org/jira/browse/FINERACT-2169, also
>>>    https://github.com/apache/fineract/pull/4281
>>>    - REST API layer implemented in JAX-RS: I can't really say if there
>>>    is a performance penalty using JAX-RS with recent implementation versions
>>>    (we use Jersey, fairly up to date) vs Spring MVC... but JAX-RS is
>>>    definitely not a first class citizen in the Spring ecosystem; this is why
>>>    we have the most important tests as integration tests (with a lot of
>>>    handcrafted client code); performance challenges: test execution time and
>>>    developer time (maintenance is difficult, code not refactoring friendly)
>>>
>>> ... here and there there are ongoing efforts to address some of these
>>> issues (e.g. as part of Google Summer of Code), but there is still a lot to
>>> do...
>>>
>>> Ping me if you want to chat on Zoom in more detail...
>>>
>>> Cheers,
>>>
>>> Aleks
>>>
>>> On Sat, Mar 22, 2025 at 3:33 AM James Dailey <jdai...@apache.org> wrote:
>>>
>>>> Piotr - great!
>>>>
>>>> I would suggest that you examine the new code (contributed last 18 -36
>>>> months) and note where the code has NOT been updated.
>>>>
>>>> I believe that the key performance issues are going to be in areas
>>>> (modules) that haven’t been refactored.
>>>>
>>>> And, then please follow the refactoring patterns  - to keep code as
>>>> maintainable as possible. That’s the high level.
>>>>
>>>> In terms of performance- there’s also a need to look at the build and
>>>> test performance- and you can find the discussions on the listserv
>>>> archives.
>>>>
>>>> Finally take a look at the FSIPs on the wiki.
>>>>
>>>> James
>>>>
>>>> On Fri, Mar 21, 2025 at 2:45 AM Piotr Wargulak
>>>> <pwargu...@soldevelo.com.invalid> wrote:
>>>>
>>>>> Hello Community,
>>>>>
>>>>> At SolDevelo, we’re eager to help tackle some of the performance
>>>>> challenges in Apache Fineract. We want to focus on real issues that users
>>>>> face—ones where improvements would bring meaningful value to the 
>>>>> community.
>>>>> To make sure we're addressing the right problems, we’d love your input!
>>>>>
>>>>> In the coming days, we’ll dive deeper into Apache Fineract to identify
>>>>> potential areas for optimization. However, if there are already well-known
>>>>> performance bottlenecks, we’d greatly appreciate any insights you can 
>>>>> share.
>>>>>
>>>>> Looking forward to your thoughts!
>>>>>
>>>>> Best,
>>>>> Piotr Wargulak
>>>>> SolDevelo.com
>>>>>
>>>>>
>>>>> *SolDevelo* Sp. z o.o. [LLC] / www.soldevelo.com
>>>>> Al. Zwycięstwa 96/98
>>>>> <https://www.google.com/maps/search/Al.+Zwyci%C4%99stwa+96%2F98?entry=gmail&source=g>,
>>>>> 81-451, Gdynia, Poland
>>>>> Phone: +48 58 782 45 40 / Fax: +48 58 782 45 41
>>>>>
>>>>
>>>
>
> *SolDevelo* Sp. z o.o. [LLC] / www.soldevelo.com
> Al. Zwycięstwa 96/98, 81-451, Gdynia, Poland
> Phone: +48 58 782 45 40 / Fax: +48 58 782 45 41
>

Reply via email to