|
You last visited: Today at 07:20
Advertisement
TBM API improvement
Discussion on TBM API improvement within the Suggestions & Feedback forum part of the General category.
10/06/2014, 22:50
|
#1
|
elite*gold: 25
Join Date: Sep 2011
Posts: 5,536
Received Thanks: 1,266
|
TBM API improvement
Hallo Leute,
ich hab mich grade mit  Unterhalten. Es ging um eine Erweiterung der TBM API. Und zwar würde es mir als Entwickler und Epvp enorm helfen wenn man noch als Zusätzlichen (eventuell Optionalen) Parameter noch eine Zeitspanne übergeben könnte um die Transaktionen einzugrenzen.
Das ganze vorhaben sollte in der Theorie einfach umsetzbar sein und würde einigen mir Persönlich, und allen anderen Entwicklern welche die API Nutzen, sowie auch Elitepvpers das Leben erleichtern.
Wieso das ganze?
Hat man viele Transaktionen braucht es viel Rechenleistung den JSON-String zu generieren und diesen auch wieder zu dekodieren was auch wiederum etwas Zeit in Anspruch nimmt.
Wem würde das ganze nutzen?
Elitepvpers, da weniger Rechenleistung zum erstellen des JSON-Strings benötigt wird.
Den Entwicklern, da weniger Rechenleistung zum dekodieren des JSON-Strings benötigt wird.
Ich hoffe das viele mir zustimmen und das ganze eventuell irgendwann umgesetzt wird.
Gruß,
Padrio
|
|
|
10/07/2014, 02:28
|
#2
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,908
Received Thanks: 25,409
|
Polls -> Suggestions
#moved
|
|
|
10/07/2014, 14:52
|
#3
|
elite*gold: 40
Join Date: Mar 2011
Posts: 6,571
Received Thanks: 1,866
|
Die API von Epvp zu erweitern ist ja schon seit Ewigkeiten im Gespräch.
Siehe:
Quote:
|
Originally Posted by Lowfyr
Sofern unsere API aktiv benutzt wird werden wir diese natürlich erweitern.
|
Suggestions zur Erweiterung gab es auch schon:
|
|
|
10/07/2014, 21:29
|
#4
|
elite*gold: 1003
Join Date: Feb 2010
Posts: 791
Received Thanks: 709
|
Und was unbedingt dazu gehören muss zur Ausgabe ist die TreasureID und nicht nur die TransaktionsID! Und die Funktion auch bei Treasures eine Notiz anzuheften, nicht nur bei gesendetem e*gold. Das würde einiges erleichtern und auch neues ermöglichen!
Auch könnte ich mir gut vorstellen das Ausgabe limitiert auf Username, UserID, Betrag, TreasureID, TransaktionsID oder Zeitstempel, sehr hilfreich und sinnvoll wäre...
So könnte man gezielt nach einer Transaktion suchen.
Diese Sachen vermisse ich jetzt gerade sehr wo ich an meinem Tool arbeite.
|
|
|
10/07/2014, 23:22
|
#5
|
elite*gold: 0
Join Date: May 2010
Posts: 6,853
Received Thanks: 5,106
|
Kann man eventuell damit kombinieren xD
|
|
|
10/08/2014, 17:54
|
#6
|
elite*gold: 56
Join Date: Oct 2010
Posts: 3,409
Received Thanks: 1,219
|
WTF!?
Du bekommst eine Textdatei, die du direkt als dict einlesen kannst und ein Zeitformat, welches sich ohne weitere Verarbeitung sortieren und entschlüsseln lässt.
Quote:
Weder vom Internetvolumen noch vom RAM verbrauch würde es einen Sinn ergeben dies einzuführen. Die paar Bytes pro Transaktion...
Wobei ich natürlich keine Einsicht hab auf ein Konto mit 250+ abgeschlossenen Trades. Da könnte sich die Sache Menge der Masse, zumindest beim Traffic, bemerkbar machen.
Von der Verarbeitung, außer man programmiert wirklich schlampig, sollte man keinen unterschied merken.
|
|
|
10/08/2014, 18:02
|
#7
|
elite*gold: 25
Join Date: Sep 2011
Posts: 5,536
Received Thanks: 1,266
|
Dir ist schon klar das der JSON-String trotzdem erst in ein Format gebracht werden sollten mit dem man ordentlich arbeiten kann?
Nett finde ich auch das man eine "Textdatei" bekommt - natürlich.
Zurück zum Thema:
Wie ich sagte musst du, damit du ordentlich mit JSON Arbeiten kannst es erstmal in ein anderes Format bringen, in meinem Fall meist einen Array - und alleine das Umrechnen kostet eben nicht nur Leistung, sondern dauert eben eine gewisse Zeit.
Es wäre ziemlich sinnfrei danach die ganzen Sachen nach dem Datum auszusortieren.
Vorher ist es eher umständlich da man mit einem einfachen String Arbeiten muss.
|
|
|
10/09/2014, 00:08
|
#8
|
elite*gold: 56
Join Date: Oct 2010
Posts: 3,409
Received Thanks: 1,219
|
Man bekommt es im Textformat sprich als einen string in diesem Fall wie du sagtest im JSON Format. Und ja man muss es einlesen, doch dies kostet kaum Rechenleistung oder um wie viel Zeit reden wie hier?
Code:
import json
transactions = {}
with open('ba.txt', 'r') as txt:
raw_transactions = txt.read()[1:-1].replace('},','} ').split(' ')
for num, trans in enumerate(raw_transactions):
transactions['transaction{}'.format(num)] = json.loads(trans)
"""
for transaction in transactions.values():
print(transaction['dateline'])
"""
Etwas dirty aber die einlese Geschwindigkeit ist bei mir beim Knopfdruck schon durchgeführt. Auch die Ausgabe des Transaktionsdatums ist ohne Verzögerung.
Hab zu Testzwecken den Inhalt vervielfacht und auf 100Mb gebracht. Auch da braucht es nicht länger als 13 Sekunden.
D.h. meine Frage bleibt wie folgt: Wie viel Zeit würdest du damit sparen? Oder geht es doch um den Traffic?
|
|
|
10/09/2014, 00:10
|
#9
|
elite*gold: 25
Join Date: Sep 2011
Posts: 5,536
Received Thanks: 1,266
|
Der traffic ist scheiß egal - es geht rein um die Zeit bei de- und encoden
|
|
|
10/09/2014, 12:17
|
#10
|
elite*gold: 144
Join Date: May 2007
Posts: 62,459
Received Thanks: 29,541
|
Um was für Zeiten reden wir hier ? Wenn es sich um paar 100ms handelt sehe ich nicht wirklich eine Dringlichkeit dies zu ändern.
Am Ende verschiebt sich die Arbeit vom einschränken der Datensätze von dir auf uns, ob wir die mehr Rechenzeit bei uns haben wollen ist auch Fraglich.
|
|
|
10/09/2014, 12:19
|
#11
|
elite*gold: 25
Join Date: Sep 2011
Posts: 5,536
Received Thanks: 1,266
|
Quote:
Originally Posted by Obilee
Um was für Zeiten reden wir hier ? Wenn es sich um paar 100ms handelt sehe ich nicht wirklich eine Dringlichkeit dies zu ändern.
Am Ende verschiebt sich die Arbeit vom einschränken der Datensätze von dir auf uns, ob wir die mehr Rechenzeit bei uns haben wollen ist auch Fraglich.
|
Die Zeiten kann ich gerne mal am Wochenende messen.
Ich stelle mir den Aufwand des ganzen auch nicht wirklich schwer vor da man das ganze auch schon beim rausziehen aus der Datenbank aussortieren kann.
|
|
|
10/09/2014, 12:19
|
#12
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,908
Received Thanks: 25,409
|
Wenn es nicht gerade um Millionen von Trades geht, kann das bisschen Textverarbeitung gar nicht so viel Zeit in Anspruch nehmen. Da sehe ich noch eher den Traffic als Argument, wenn auch als schwaches.
|
|
|
10/09/2014, 13:25
|
#13
|
elite*gold: 1003
Join Date: Feb 2010
Posts: 791
Received Thanks: 709
|
Ihr hab den eigentlichen Sinn der Sache jetzt an die Effizienz abgegeben...
Es geht hier immernoch um das erweitern der API um Funktionen und Informationen, wie von mir schon weiter oben erwähnt. Die Informationen wären mir wichtiger als die Möglichkeit die Ausgabe zu limitieren. Ich wünsche mir lieber die schon vorher angegebenen informationen über die API abfragen zu können.
|
|
|
10/09/2014, 16:04
|
#14
|
elite*gold: 56
Join Date: Oct 2010
Posts: 3,409
Received Thanks: 1,219
|
Möchte mich hier auch nicht gegen eine Erweiterung der TBM API Funktionen aussprechen. Wollte nur meine Meinung über die Begründung der Einfuhr dieser Funktion aussprechen.
Bin auch dafür diese gewünschte Funktion einzuführen, sprich das man sich die Trades vom jeweiligen Tag ausgeben lassen kann. Mein Argument mit dem Traffic ist bei so niedrigen Datenvolumen auch nicht treffend, wobei die Rechenkraft weder auf dem Users- noch auf dem Hosterserver von starker Belastung betroffen sein sollte.
Das einzige was bleibst ist die Umsetzung des Epvp Informatikers.
Bin mir nicht sicher ob auf der ersten Seite ein Sammelbeitrag für neue TBM API funktionen verlinkt wurde, aber bin dafür diesen dort hinzuzufügen.
|
|
|
10/09/2014, 16:06
|
#15
|
elite*gold: 25
Join Date: Sep 2011
Posts: 5,536
Received Thanks: 1,266
|
Quote:
Originally Posted by MrDami123
Bin auch dafür diese gewünschte Funktion einzuführen, sprich das man sich die Trades vom jeweiligen Tag ausgeben lassen kann.
|
Es gibt nicht darum Trades von einem beliebigen Tag anzeigen lassen kann sondern der letzten X Tage.
|
|
|
 |
|
Similar Threads
|
Stamina Improvement
07/11/2013 - CO2 Private Server - 10 Replies
I did not like the way Impulse had the stamina for a player coded because it was too plain and was missing quite a lot. So I took the liberty of implementing the codes used on Albetros for stamina onto the 5165 base. And It was a success .. somewhat.
The only issue I come across is literally having to sit over and over to gain stamina after using a skill that requires stamina usage. I'm not sure what I am missing so when the character is sitting, the stamina is increasing.
#region Stamina...
|
There is a program for 100 % of improvement?
11/07/2009 - General Gaming Discussion - 7 Replies
There is a program for 100 % of improvement?
|
Copartner improvement.
12/04/2006 - Conquer Online 2 - 2 Replies
Hmm.Any idea the co partner can improve so that when we are botting we still can type&chat in the game normally.
Another question is that can any1 tell me getting moonbox from the same ghost or all different, which has the higher chance to get socket items?
|
All times are GMT +1. The time now is 07:20.
|
|