#76 Document information about the current solution
Merged a year ago by t0xic0der. Opened a year ago by t0xic0der.
fedora-infra/ t0xic0der/arc failsolv  into  main

@@ -0,0 +1,61 @@ 

+ .. _creation_fail:

+ 

+ Why does the existing solution not work?

+ ====

+ 

+ The existing solution does not work anymore and necessitates the need of a new

+ solution because of the following reasons.

+ 

+ Internal reasons

+ ----

+ 

+ The existing solution does not work anymore because of the following reasons 

+ pertaining to the system itself.

+ 

+ 1. Retrieval of a filtered list of human-only usernames from FASJSON service is

+    a performance intensive process and time consuming process both at the 

+    serving and the receiving end. Having the service unit to fetch the list of

+    all usernames not only delivers penalty to the performance of the service 

+    unit itself but also harms the experience of those using FASJSON service at

+    their ends. This can lead to severely unintended consequences such as 

+    causing an unplanned downtime at the serving end, hogging up the reources 

+    due to the contigious nature of the request and deteriorating the quality of

+    service for other FASJSON users.

+ 

+ 2. Obtaining a moderated list of active human-only usernames from Datagrepper

+    is also a performance intensive and time consuming process both at the 

+    serving and the receiving end. While running this service unit does not 

+    deteriorate the quality of service of Datagrepper for other users, the 

+    process is very slow as the Datagrepper service has to further interact with

+    the Datanommer database in order to be able to compute the request and fetch

+    the requested information elements. As a consequence, the service unit 

+    runtime is very long and can be incredibly dependent on the network 

+    performance of the client machine.

+ 

+ 3. Having too many entities in the system not only makes it complicated but it

+    also brings in the added risks of failure and cost in time and effort 

+    required to connect these entities with each other in the form of processes.

+    For instance, the service unit for fetching all the usernames from FASJSON 

+    takes more than 90-120 minutes in one run and that for fetching all the

+    active usernames from Datagrepper takes more than 330-360 minutes in one 

+    run. This severely restricts the opportunities for development of new 

+    features and quality-of-life updates as the testing workflow could end up 

+    easily taking a lot of time and resources.

+ 

+ External reasons

+ ----

+ 

+ An new and improved solution is made necessary because of the following reasons

+ pertaining to the external entities.

+ 

+ 1. In the wake of increased requirements from the stakeholders, the scope of

+    the tool widened drastically to a point that the existing solution could not

+    be extended to address the newer needs. While the design ideas and the 

+    processes could be followed from the existing solution, the improved 

+    solution was required to be developed to ensure it could handle larger data

+    elements, compute them to find out statistics about human-only users, amount

+    for multiple services that publish messages on the Fedora Messaging bus and

+    generate contribution statistics effectively. Therefore, an initiative was 

+    proposed to better facilitate these needs.

+ 

+ 

file modified
+1
@@ -97,5 +97,6 @@ 

  

      creation_workflow

      creation_gram

+     creation_fail

      solution_workflow

      proposed_technologies

Pull-Request has been merged by t0xic0der

a year ago