Marcel Eichner // Ephigenia

  • Home
  • Illustration
  • Code
  • Kontakt

Aktuelle Projekte

Horrorblog.org
jQuery.slideShow
Franklin
code.marceleichner.de

This Blog-Website is built with Harrison!

Blogs & Freunde

Gimmixx
Martin Fleck
Torsten Bergler
Jens Franke
Robokid
Peter Kröner
Polycoder
Coding Horror
Lotterliebe
CodeBalancer
Pseudocoder
Migrador
Piv-Berlin, Immobilienverwaltung Verwaltung Berlin Peter Arold Dachdeckermeister im Vogtland und Werda blogoscoop

#493

07.03.2010 18:53
0 Kommentare
Share
  • code
  • wordpress
  • php
  • deploy
  • local
  • programmieren
  • tutorial
  • url
  • permalinks
  • config
Ich hab ja in letzter Zeit mal sporadisch mit dem wunderbaren Wordpress zu tun gehabt und konnte mich eine Weile damit beschäftigen. Viele Sachen gefallen mir nicht, unter anderem die Tatsache das Wordpress URLs immer komplett haben muss. Wie soll ich bitte lokal entwickeln wenn alle URLs komplett sind?

Dem lässt sich zum Glück relativ einfach abhelfen. Man legt sich einfach eine wp-config.php Datei an die man nur benutzt wenn man lokal entwickelt. Das kann man zum Beispiel am username im System festmachen:
$envUsername = strtolower(get_current_user());
$envConfigFilename = dirname(__FILE__).'/wp-config-'.$envUsername.'.php';
if (file_exists($envConfigFilename)) {
  require $envConfigFilename;
}

Und dann kann man in der lokalen Konfigurations-Datei einfach den Wordpress-Installationspfad überschreiben:
define('WP_HOME','http://'.$_SERVER['HTTP_HOST'].'/wordpress/path/');
define('WP_SITEURL', WP_HOME);

So hat man zumindest damit keinen Stress mehr. Wie man die Bilder lokal verlinkt weiss ich allerdings auch noch nicht …

#489

19.11.2009 12:56
4 Kommentare
Share
  • code
  • Geo
  • Service
  • Location
  • Based
  • Augmented
  • Reality
  • Iphone
  • App
  • Tourismus
  • Tourist
  • Reise
  • Empfehlungen
Erst vor zwei Wochen etwa hatte ich das Vergnügen und konnte den Layar-Browser auf einem der neuen IPhones 3Gs ausprobieren und war schlichtweg begeistert!

Dort kann man einfach den Bildschirm wie ein Fenster in einer andere Welt benutzen. Man schwenkt das Handy hin und her und sieht an welcher Stelle im Raum (in 3D dargestellt) sich zum Beispiel Wikipedia Einträge befinden. Ganz praktisch wenn man sich verlaufen hat und den Fernsehturm gerade nicht sehen kann um sich zu orientieren. Erst eine Spielerei - die aber durchaus imenses Potential hat das Leben der Menschen zu erleichtern. Die intuitive Art wie man das Handy bewegt hilft dabei nur ungemein.

In Layar kann man so gut wie alle Daten die einen Ort haben anzeigen lassen, vorausgesetzt es gibt dort einen Stream dafür. Neu dazu gekommen sind heute die Jungs und Mädels mit ihren Reisetips von Spotted by Locals. Wer sich nicht so richtig vorstellen kann wie das genau abläuft guckt sich am besten eines der Videos an die es bei Youtube gibt.

Also nur noch eine Frage der Zeit, bis alle Leute mit dem Handy vor dem Gesicht durch die Straßen rennen und sich niemand mehr verläuft! Es sei denn, der Akku is’ leer ;-)

#463

19.06.2009 10:45
0 Kommentare
Share
  • code
  • osx
  • test
  • terminal
  • tool
  • apache
  • siege
  • unix
  • webserver
  • benchmark
  • performance
  • regression
Wie gestern schon beschrieben kann man super ab (Apache Bench) die Performance seiner Applikationen im Web testen. Durch Zufall hab ich in meiner Ports Sammlung noch ein anderes Programm gefunden das auch sehr vielversprechend aussieht: siege.

Dort kann man auch mehrere URLs testen, einen User simulieren und noch viel mehr. Damit habe ich allerdings noch nicht so viel Erfahrung. Hab aber gleich mal meine App getestet:
siege -c 100 -t 10s http://localhost/myProject/
Die Ausgabe sieht fast so aus wie beim ab:
Transactions:                    545 hits
Availability:                 100.00 %
Elapsed time:                  17.85 secs
Data transferred:               1.33 MB
Response time:                  1.02 secs
Transaction rate:              30.53 trans/sec
Throughput:                     0.07 MB/sec
Concurrency:                   31.01
Successful transactions:         604
Failed transactions:               0
Longest transaction:            3.31
Shortest transaction:           0.03

Mit einem Config File kann man aber auch noch mehrere Urls abfragen und so ein realistischeres Ergebnis erzielen. Mehr dazu steht in der Docu von Siege oder in Tutorials die man so im Netz findet: Regression testing with Siege.

Ich denke mal das solche Tools auch eine wunderbare Möglichkeit sind verschiedene Hoster zu testen oder einem Kunden zu zeigen wie Vorteilhaft eine Optimierung seiner Applikation wäre oder einfach nur welchen extremen Effekt der Einbau eines Caches hat.

#462

18.06.2009 13:37
2 Kommentare
Share
  • code
  • php
  • osx
  • test
  • framework
  • terminal
  • shell
  • apache
  • unix
  • benchmark
  • performance
  • port
Wer sich mit Websiten beschäftigt die von mehr als 100 Besuchern am Tag besucht werden und nicht wirklich viel im Terminal macht freut sich eventuell über Apache Bench.

Das ist ein Programm das man auf OSX ganz einfach im Terminal laufen lassen kann um seinen Server mal so richtig schwitzen zu lassen.

Ein üblicher (und auch vergleichbarer) Aufruf ist der folgende:
ab -c 10 -t 60 http://localhost/myProject/
Was 60 Sekunden lang, immer 10 Requests auf die Seite abfeuert und einem danach folgende Ausgabe generiert:
Finished 3102 requests
Server Software:        Apache/2.0.59
Server Hostname:        localhost
Server Port:            80
Document Path:          /myProject/
Document Length:        2005 bytes
Concurrency Level:      10
Time taken for tests:   60.002 seconds
Complete requests:      3102
Failed requests:        303
   (Connect: 0, Receive: 0, Length: 303, Exceptions: 0)
Write errors:           0
Total transferred:      7530897 bytes
HTML transferred:       6211149 bytes
Requests per second:    51.70 [#/sec] (mean)
Time per request:       193.431 [ms] (mean)
Time per request:       19.343 [ms] (mean, across all concurrent requests)
Transfer rate:          122.57 [Kbytes/sec] received
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    1   1.2      0      11
Processing:    30  186 663.6    157   20630
Waiting:        0  161  83.6    155     621
Total:         30  187 663.6    157   20631
Percentage of the requests served within a certain time (ms)
  50%    157
  66%    196
  75%    219
  80%    235
  90%    276
  95%    309
  98%    354
  99%    386
 100%  20631 (longest request)
In dieser Ausgabe kann man erkennen das das aktuelle Projekt so ca. 50 Leute gleichzeitig aushalten könnte. Im vergleich mit anderen Projekten kann man dann Rückschlüsse darauf ziehen wie gut man programmiert hat ;-)

Viele benutzen ab auch zum Vergleich von verschiedenen Frameworks die ich euch natürlich nicht vorenthalten möchte: Test1, Test2 und Test3.

ab kann man wie üblich über macports installieren (OSX Developer Tools müssen installiert sein):
sudo port install ab

#448

30.03.2009 17:47
0 Kommentare
Share
  • code
  • deploy
  • programmieren
  • osx
  • terminal
  • script
  • shell
  • apple
  • server
  • rsync
Ein weiterer Vorteil von mediatemple Servern ist, dass man per rsync und ssh einfache Projektupdates schieben kann.

Ich arbeite an den meisten Projekten, wie auch diesem Blog, lokal auf meinem Rechner und habe bisher immer mit Transmit syncronisiert. Da Transmit aber reichlich beschränkt ist, was die Einstellungsmöglichkeiten betrifft und mein PHP-FTP Sync Programm nicht 100% alle Features abdeckt die rsync abdeckt habe ich mich damit mal beschäftigt.

Sobald man einen ssh Zugang zu seinem Mediatemple server hat kann man mit nur einer Zeile in der Console sein komplettes Projekt updaten - in Windeseile!

rsync -avzcu --cvs-exclude --progress [localDir] -e ssh [host]:[remoteDir] --exclude-from deployIgnore.txt
Die mit eckigen Klammern umklammerten Sachen müsste man dann einfach durch eigene Werte ersetzen.

#283

01.03.2006 21:52
0 Kommentare
Share
  • Web
  • fundstücke
  • Experimentell
Nochmal n zacken schärfer als Google maps, jetzt kann man auf der Seite von Windows Live Local mit nem heissen flitzer durch die strassen von seatle und san francisco cruisen.
Was ich mich frage is, was man mit nem gamepad im auto macht .. mmh, auf jeden fall irgendwie janz schön krass!
marceleichner HTML5 Harrison Theme (Validate Source), © 2010 by Ephigenia M. Eichner, Impressum