Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

flashpixx

Mitglieder
  • Registriert

  • Letzter Besuch

Alle Beiträge von flashpixx

  1. @Brixto: siehe mein Post bezüglich SSI
  2. Das erfordert aber Anpassung der PHP Scripte, denn PHP kann nicht im Browser debuggen, das ist technisch nicht möglich, da die Scripte serverseitig durch deren PHP Interpreter, der im Webserver eingebunden ist, aufgerufen werden. Um das, was der OP machen will, durchzuführen braucht man man Server Side Includes die müssen im Webserver korrekt installiert und konfiguriert sein. Hat man das nicht, geht es nicht. Hat man keine SSI, dann generiert man eben den kompletten Seitencode per PHP und gibt ihn via echo aus.
  3. flashpixx hat auf IT-Kaetzchen's Thema geantwortet in Java
    Warum liest Du Dir nicht mal die Doku zu der verwendeten Komponente durch, da steht das nämlich drin: JOptionPane (Java 2 Platform SE v1.4.2)
  4. flashpixx hat auf Angerf1st's Thema geantwortet in Linux
    Es geht um die Prüfung auf == bzw >, das ist ein Unterschied.
  5. flashpixx hat auf Angerf1st's Thema geantwortet in Linux
    Wenn ich einen zeitgesteuerten Job brauche, dann lege ich dafür einen Eintrag in der Crontab, da ich ja weiß wann dieser Job läuft brauche ich die Prüfung nicht Zusätzlich würde ich die Prüfung nicht durchführen, denn es wird bei einem theoretischen manuellen Start kaum möglich sein, exakt 4 Uhr zu treffen, d.h. Du wirst immer eine gewisse Zeitspanne prüfen müssen, aber wer startet schon manuell nachts um 4 Uhr ein Script!?
  6. flashpixx hat auf Tina92's Thema geantwortet in Datenbanken
    Wäre durchaus möglich, theoretisch kann man aber auch ein 3D Game machen, denn OSM liefert ja auch Gebäudetypen etc. d.h. man könnte immer den Ausschnitt der Straße in dem man sich befindet real in 3D z.B. via Irrlicht Engine - A free open source 3D engine rendern, d.h. durch die Straßen kann ich dann laufen und wenn ich eben schneller voran kommen will, nehm ich halt andere Verkehrsmittel (wenn man dann möchte kann man ja auch ein bisschen in die Ego-Shooter-Perspektive gehen). Für die Benutzung der Verkehrsmittel muss man Geld bezahlen, wobei man das ja dann wieder daran koppeln kann, dass man Sachen für Leute transportieren muss, bzw. irgendwelche Subchallenges hat. Zusätzlich kann man ja auch ein Kommunikationssystem (a.k. Telefon) erstellen, so dass man sich zum Telefonieren treffen kann (was dann einen Chat ermöglicht). Nimmt man als Grundlage nicht eine Stadt, sondern z.B. die komplette Weltkarte und dazu dann mehrere Jäger und mehrere gejagte, dann ist das durchaus interessant, wenn man dann auch z.B. die Reisezeit entsprechend berechnet. Für die Gejagten kann man ja dann auch noch diverse Möglichkeiten einbauen, wie sie sich z.B. verstecken können. Ich denke da so in die Richtung Agentenspiel. Rundenbasiertes Spiel halte ich für irgendwie nicht so schön, annähernd Echtzeit fände ich viel interessanter.
  7. flashpixx hat auf Tina92's Thema geantwortet in Datenbanken
    Was mir dazu noch einfällt ist, dass Du Dir das Spiel sogar mit realen Daten erzeugen kannst DE:Öffentlicher Verkehr - OpenStreetMap Wiki bzw http://wiki.openstreetmap.org/wiki/DE:%C3%96pnvkarte
  8. flashpixx hat auf Tina92's Thema geantwortet in Datenbanken
    Ich denke die Problematik, die Du hier ansprichst, ist für andere interessant, darum führe ich das etwas aus: Wir nehmen einmal Deine XML, in der wir das Straßennetz abspeichern. Du hast dann ein Problem, dass Du in der XML Stationen erzeugen kannst, die nicht in Deinem Straßennetz vorhanden sind ( Erreichbarkeitsproblem in Graphen bzw Zusammenhang (Graphentheorie) ). Du musst also sicherstellen können, dass Dein Graph zusammenhängend ist, d.h. jeder Punkt erreichbar ist. Mit XML alleine ist das nicht machbar. Das zweite Problem, was daraus resultiert, wäre, wenn Du einen gerichteten Graphen hast, d.h. Du kannst von einer Station nur in eine Richtung fahren, dann entsteht das Problem der Traps, d.h. ich kann an eine Station gelangen von der ich nicht mehr weg komme (Sackgasse). Dies solltest Du auch verhindern, wenn Du so etwas machst. Als drittes eher praktisches Problem bei XML hast Du, dass Du in Deiner Node z.B. für Bus formal eintragen kannst, zu der keine Station existiert, d.h. Du musst also auch sicherstellen, dass Deine XML inhaltlich valide ist. Als weiteres Problem bei XML ist, dass Du es parsen bzw. den gesamten Baum im Speicher halten musst. Damit hast Du aber das Problem der Referenzen zwischen Deinen XML Nodes und den Graphpunkten nicht gelöst, denn wenn ich auf einer XML Node stehe und ich weg will, muss ich die passende Zielnode beim Wechsel aus dem Speicher holen, sprich ich muss bei SaX den Parser anweisen "such mal die passende Node" (Aufwand). Als nächstes ist dann noch die Frage, wie Du die Informationen an den Spieler hängst, denn ein Spieler muss ja wissen, auf welchem Feld er steht. Du musst also immer eine Referenz oder Kopie auf Deine XML an den Spieler hängen, so dass Du hier bei großen Straßennetze durchaus viel Speicheraufwand hast. Wenn ich da jetzt den Gedanken weiter spinne und z.B. das ganze über Netz auch spielen möchte, dann muss ich mir ja auch überlegen, wie ich das Straßennetz für alle Spieler gleich aussehen lasse, eine XML kann ich leicht per Hand verändern, so dass jeder Spieler sich lokal seine Karte verändern kann. Wenn ich dann noch zulasse, dass Spieler gleichzeitig ziehen können und die Karte z.B. über einen Webservice bereit stelle, dann habe ich 2 Anfragen der Spieler bei der für jeden Zugriff ein XML Prozess gestartet wird, der die XML parsen muss. Für große Anzahl an Spielern und große Karten, ist das nicht mehr praktikabel. Auch bei mehreren Spielern pro PC, solltest Du Dir überlegen, wie Du diese XML Daten passend verarbeitest, denn Du hast nur die Möglichkeit den Baum einmal zu lesen, ein Baum ist aber kein Graph, d.h. Du brauchst noch irgendwie eine Transformation des Baumes in das Straßennetz oder Du musst das in "Echtzeit" machen, was durchaus auch nicht unkritisch ist. Was man ja gerne hätte, ist, dass der Spieler weiß wo er steht, d.h. er hat irgendwie eine Position, diese Position verweist dann auf einen Knoten im Straßennetz. Ich kann den Knoten fragen "welche Verbindungen erlaubst Du wohin", ebenso kann ich die Person fragen "wo stehst Du gerade". Der Knoten wiederum braucht nicht das komplette Straßennetz speichern, er muss lediglich eine Liste mit Knoten speichern, auf die man sich bewegen kann, d.h. allerhöchstens eine Adjazenzliste. Rein technisch braucht er noch nicht mal das, denn bei sehr vielen Verkehrsmitteln und vielen Verbindungen wäre das durchaus Speicherbedarf der dann für alle Spieler anfällt. Er muss nur eine Referenz auf ein Graphdatenbankobjekt speichern, dass dann in Abhängigkeit von seiner aktuellen Position die Liste mit den Nachbarknoten liefert, d.h. die Adjazenzliste muss ich allenfalls temporär halten (diese Liste kann ich dann nochmals reduzieren, wenn ich z.B. die Abfrage so erstelle, dass ich das Verkehrsmittel vorgebe). Zusätzlich kann ich damit auch ohne Probleme sehr große Netze mit sehr vielen unterschiedlichen Verkehrsverbindungen darstellen (z.B. Flugzeug, Bahn, U-Bahn, Bus, Taxi, zu Fuß), weiterhin kann ich auch gerichtete Graphen erzeugen, weil mir die Datenbank ggf abnehmen kann dafür zu sorgen, dass meine Knoten im Graphen immer erreichbar sind. Graphstrukturen sollten immer sehr gut durchdacht werden, denn durch das quadratische Wachstum der Datenmenge kommt man sehr schnell an die physischen Grenzen seines Rechners, wenn man es naiv macht.
  9. Ich habe mir jetzt nicht im Detail die API Funktionen angeschaut, aber ich gebe zu Bedenken, dass das durchaus nicht so sein muss, denn im Normalfall ist es üblich den Schlüssel in Abhängigkeit von einem Zufallszahlengenerator zu generieren, d.h. gleiches Passwort und gleiches Algorithmus liefern nicht zwingend den gleichen Schlüssel. Es sollte Angreifern möglichst schwer gemacht werden, aus teilweise bekannten Daten die Schlüssel ggf durch Brute-Force zu rekonstruieren. Schau über die genauere Generation der Schlüssel in die Doku Deiner API, da steht letztendlich auch drin, wie dies im Detail gemacht wird.
  10. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Packages and the Java Namespace (Java in a Nutshell)
  11. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Try-Catch löst das Problem nicht, sondern es fängt lediglich den Fehler ab, wie Du ihn behandelst ist eben dann Deine Sache und eine Index-Out-of-Bounce Exception sagt, dass Du auf ein Element zugreifst, dass nicht existiert. Zu Deinem Code, Du allokierst so lange lFehler true ist immer ein neues Array, obwohl sich die Daten des Arrays nicht ändern, d.h. jedes Mal wird Speicher allokiert und ggf erst später durch den GC freigegeben, das ist absolut sinnfrei. Zweitens wird eine Exception hier jedes Mal auftreten, denn Du greifst auf das 5. Element zu, aber die Indizierung eines Arrays beginnt bei null, also ist der Index den Du verwendest generell falsch.
  12. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Java-Syntax
  13. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Wie auch schon in Deinen anderen Thread angemerkt, zeige Deinen realen Code, dann kann man dazu auch was sagen. Dein Pseudocode ist absolut unbrauchbar, um das Problem zu verdeutlichen. Ebenso solltest Du Dir angewöhnen, dass Du auch die entsprechenden Meldungen angibst, die Dein Code produziert. Ich gehe davon aus, dass Dein Code mehrere semantische Fehler enthält, die durch Deine exzessive Nutzung von mehreren 100 Threads noch die Probleme durch die Nebenläufigkeit verstärken. Ändere Deinen Code so ab, dass er das Problem sinnvoll mit resourcenschonenden Strukturen löst. Du kannst hier Hilfe bekommen, aber Du musst schon dazu Deinen Code und auch die genaue Problemstellung und vor allem das Ziel angeben. Das Problem wird nicht an Java oder Deinem Rechner liegen, das Problem ist Deine Programmierung. Deine Postings beschreiben bisher im Grunde die Aussage "mein Code läuft nicht, aber ich will den nicht zeigen und den Algorithmus will ich auch nicht überarbeiten"
  14. Die Abweichung ist kein Problem, auch wenn sie extrem ist. Natürlich sollte dadurch nicht ein völlig anderes Projekt entstehen. Was wichtig ist, wie Du alle Abweichungen fachlich & wirtschaftlich begründest. Schreib rein, wie es real ist und eben wie Du das in Bezug auf die Projektdurchführung einschätzt. Die Infos bekommst Du aus der Buchhaltung bzw. frag Deinen Ausbildung. Es reicht ja hier angenäherte Werte zu nehmen z.B. wenn ein Mitarbeiter einen AT Vertrag hat, den Du nicht einsehen darfst. Du kannst schon die realen Kosten kalkulieren siehe Punkt 1
  15. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Wieso muss jede Uhr in einem eigenen Thread laufen? Die Uhren werden im Grunde auf die Systemzeit synchronisiert, d.h. es reicht ein Thread. Da die Zeit auf jeder Uhr nicht schneller oder langsamer läuft als auf allen anderen braucht man nicht so viele Threads wie Uhren. Denn die Uhren sind nicht unabhängig von der Zeit und die Zeit wiederum ist nicht unabhängig von der Welt. Zeitzonenumrechnung gibt es fertig. Eine Sekunde bleibt überall auf den Uhren eine Sekunde. Deine Herangehensweise ist völlig falsch. Ein Thread der die Zeit darstellt und eine entsprechende Eventstruktur um alle Uhren upzudaten, wäre der richtige Ansatz ggf dazu dann noch ein GUI Threads
  16. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Das ist kein Beweis, sondern im Grunde die Aussage, dass Dein Code etwas tut, was er nicht soll. Denn wenn durch das einfache Auskommentieren es läuft, dann spricht das für schlechten Code. Würde der Code korrekt arbeiten, dann sollte die Ausgabe lediglich etwas mehr Laufzeit erzeugen. Ich habe mir eben mal 10^6 zufällig erzeugte Java Strings auf der Console unter OSX 10.6.8 ausgeben lassen, also die reine Ausgabe erzeugt kein Problem.
  17. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Wieso darf überhaupt der User Kontrolle darüber haben wie viele Threads im System laufen? Auf welcher fachlichen Grundlage kannst Du das rechtfertigen? Die Anzahl der Threads ist abhängig von der Hardware und es Algorithmus, nicht von der Laune des Users.
  18. flashpixx hat auf Tina92's Thema geantwortet in Datenbanken
    Ein Array ist recht ineffizient und verbraucht viel Speicher. Ich rate zu einer sparse Datenstruktur
  19. man fdisk, man cfdisk und man mkfs solltest Du Dir anschauen
  20. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Weder in der Schule, noch in der Ausbildung, noch im Studium oder im Berufsleben ist mir so eine Aufgabe untergekommen, in der verlangt worden wäre 500 Threads zu erzeugen. Das ist sowohl von theoretischer, wie auch praktischer Sicht völlig sinnlos. Wenn Du keine Anmerkungen zu der Problemstellung posten kannst d.h. z.B. den Wortlaut der Aufgabenstellung oder Codeauszüge, dann kann Dir hier auch niemand helfen. Ich formuliere es mal in Bezug auf Deinen anderen Thread http://www.fachinformatiker.de/java/156618-programm-bleibt-stehen.html so, dass Dein Lösungsalgorithmus extrem ineffizent ist und Du versucht durch "technische Spielerei (Threads)" die Ineffizienz zu lösen. Sofern Du also hier nicht bereit bist mehr Details zu dem Problem zu zeigen, wird man Dir nicht helfen können.
  21. flashpixx hat auf Ben2013's Thema geantwortet in Java
    OT: Ich glaub ich hab Dir damit die Steilvorlage geliefert
  22. Benutze einen Webservice, der auf die Datenbank zugreift und spreche diesen per Ajax über JQuery an
  23. Ich würde Server und Speicher trennen. Ich würde das Speichersystem als iSCSI oder Fibre Channel erzeugen bzw. direkt OneFS distributed file system - Wikipedia, the free encyclopedia nehmen und die Nodes via InfiniBand verbinden. OneFS würde entsprechende Zugriffsdienste schon bieten und ich muss es nicht selbst verwalten. Zusätzlich erreiche ich mit einem verteilten System bessere Datendurchsätze. Wenn nun ein Server verwendet werden soll, dann würde ich ggf wirklich überlegen, ob man hier Windows einsetzen muss, denn der Server muss ja nur das Dateisystem bereitstellen, das per FC oder ISCSI angebunden ist. Dazu kann man eine fertige Linux-Distro wie FreeNAS 8 | Storage For Open Source einsetzen. Backup kann man ebenso anbinden, wodurch man ja die Daten mit der notwendigen Performance backuppen kann. Halte ich für nicht notwendig, OneFS hat entsprechenden Support, FreeNAS ist minimal und das Sichern der Konfiguration ist wirklich nicht umfangreich und muss nur dann durchgeführt werden, wenn ich sie ändere. Sinnvollerweise würde man die Konfiguration mit in das Backup legen. RAID bzw USV denke ich, sind sowieso notwendig, d.h. darüber muss man eigentlich nicht mehr sprechen. sehe ich ebenso, das hängt natürlich davon ab, was man als Ausfallzeit tolerieren kann, also ein individueller Punkt. Dieses Problem hätte man bei OneFS so direkt nicht, da es ein verteiltes System ist. Bei FreeNAS würde ich ein fertiges System immer vorliegen haben was man z.B. über eine VM starten kann, ist zwar dann nicht performant, aber während der Reperatur des eigentlichen Systems verkraftbar. Weitere Punkte s.o. Evtl hast Du ja mal die Möglichkeit Dir das FreeNAS anzuschauen z.B. in einer VM, d.h. dazu müsste man dann "nur noch die passende Hardware" beschaffen. Was das Backup angeht, da wirst Du letztendlich Dich am Storage orientieren müssen, aber sorry, an einem Tag in der Woche ein Band in ein Laufwerk zu legen und es einen Tag später raus zu nehmen, ist jetzt wirklich nicht das Problem !? Wie oft steckt man denn einen USB Stick an seinen Rechner !? Rein physisch muss das System, dass das Backup macht, ja nicht dort stehen, wo das NAS steht, lediglich die Anbindung muss passen. Was Du als Anbindung für das System brauchst kannst im Grunde recht einfach abschätzen durch die konkurrierende Rechneranzahl und eben die Datenmenge und danach musst Du dann auch das Backup bemessen, aber eine Alternative zu Bändern gibt es wohl nicht
  24. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Es sollte kein Problem darstellen diese Daten auf der Console auszugeben, nur lesbar wird das dann nicht mehr sein. Ich rate, sofern wirklich diese Zahl 10^7 zutreffend ist, zu einer Datenbank. Wobei ich mir das aber bei einem Anfängerprogramm nicht so recht vorstellen kann
  25. flashpixx hat auf Ben2013's Thema geantwortet in Java
    Nein 500 Threads machen keinen Sinn (siehe die theoretische Grundlage Amdahlsches Gesetz ) Da Du Java Anfänger zu sein scheinst (aufgrund Deiner anderen Threads), rate ich ganz dringend dazu, dass Du erst einmal verstehst, wie Java arbeitet, bevor Du hier mit Threads und Nebenläufigkeiten arbeitest. Dass Du den Begriff Mutex nicht kennst, zeigt dass Du keine Vorstellung hast, wie überhaupt Threadding i. Allgm. funktioniert. Mich graut es wirklich davor, wenn ich höre, dass Du 500 Threads erzeugst und dann davon gefühlte 99% im Sleep hast, denn Dein Core kann nur wenige Threads parallel abarbeiten. 500 Threads zu erzeugen ist völlig sinnbefreit, denn Dein Problem wird gar nicht die Komplexität haben, dass das rechtfertigt. Ich habe hier als Vergleich Probleme, die eine gesamt Last von ca 500 GB im Ram erzeugen über mehrere Clusternodes verteilt und auf jedem Core laufen nur 2 Threads parallel. Ich erzeuge gar nicht erst mehr, sondern genau so viel, wie die Hardware zulässt. Bei 48 Cores macht, dass dann 96 Threads auf 6 physikalischen Maschinen mit je 8 Cores. Threadding ist nicht umsonst, d.h. durch das Threadding erzeugt man auch einen gewissen Overhead, d.h. ist die Komplexität des Problems nicht groß genug, ist der Overhead teurer, als den Speed-Up den man erreicht. Zusätzlich bringt Threadding nur etwas, wenn der Algorithmus sich sinnvoll parallelisieren lässt. Wenn man ständig Synchronisieren muss, wird das ineffizient. Nebenläufigkeit ist nicht der erste Punkte, den man optimieren sollte, zusätzlich sollte man mit Bedacht dies einsetzen Mutex

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.