Jarosław Czub DevBlog

Ogólnie o programowaniu

Category: Snippet (Page 2 of 3)

Java 8: Wielowątkowość cz1. – wstęp, theread, synchronizacja

Wielowątkowość w programowaniu to nie jest łatwy temat, źle użyta jest przyczyną bardzo wielu kłopotów. Ten temat będzie podzielony na parę części: Wielowątkowość cz1. – wstęp, theread, synchronizacja Wielowątkowość cz2. – komunikacja międzywątkowa, synchronizacja poprzez kolejkę Wielowątkowość cz3. – egzekutory, pule wątków, Future i Callable Wielowątkowość cz4. – framerwork Fork/Join Wielowątkowość cz5. – klasy wspomagające […]

Java 8: Lambda

Dawno nie było pisania technicznego :(, troszkę jest rzeczy na głowie. Dzisiaj na tapetę idzie Java 8 i jej jeden z ficzerów operator Lambda. Co to są Lambdy? Jest to uproszczony sposób zapis metod anonimowych, tylko taki bardziej czytelniejszy. Lambda nawiązuje do języków funkcyjnych, gdzie tak jak w matematyce kładzie się nacisk na obliczanie wartości […]

Yii2, ErrorException i skopane logowanie

Domyślnie w Yii2 skopanie jest logowanie błędów ErrorException, itd, nie zapisują się do loga, tylko lecą do >/dev/null … rozwiązanie jest trochę na okrętkę, ale działa: try{ /* Error code */ } catch (yii\base\ErrorException $ex){ Yii::error("ErrorException: file: ".$ex->getFile()." line: ".$ex->getLine()."\nPrevious Track: ".$ex->getPrevious()."\n\nStack: ".$ex->getTraceAsString()); throw new yii\base\ErrorException($ex); }try{ /* Error code */ } catch (yii\base\ErrorException $ex){ […]

Tworzenie zdalnego repozytorium git’a

Szybkie przejście z svn’a na git’a, bez kopiowania zawartości svn’a tylko aktualna wersja projektu. Na zdalnej maszynie: cd /srv/git_root/ mkdir project.git cd project.git/ git –bare init git update-server-info na lokalnym kompie: cd project git init git add * git commit -m „First commit message” git remote add origin ssh://user@IP:PORT/srv/git_roor/project.git git push -u origin master

Yii2 i testy w Codeception

Fajnie jak wszystko pracuje bez błędów, gorzej jak nie chce … Tutaj walczyłem z unit testami oraz testami systemowymi w Yii2 i … nie chce działać. Wysypuje się aż miło, a wypisuje tylko „Internal Server Error”, w końcu się udało. Ponieważ stosuję inny układ katalogów w projekcie niż domyślny w Yii2, to Codeception nie potrafił […]

PHP Testing Framework Codeception pod Windowsem

Tak na szybko, instalacja w krokach … Codeception jest to jeden z frameworków do testowania skryptów PHP typu BDD (Behavior Driven Development), można w nim również wykonywać testy jednostkowe (posiada wbudowanego PHPUnit’a), czy podążać ścieżką TDD. Ręczna instalacja i używanie pod Windowsom w paru krokach (plik php.exe jest na ścieżce przeszukiwań plików exe): Wchodzimy na […]

Yii2 operacje CRUD

Wyszła nowa wersja Yii2, nawiasem mówiąc fajny framework (inni się nie zgodzą, ale każdy używa co mu pasuje), tylko jest nie zgodny z Yii. Dlatego będzie trzeba porobić trochę przykładów kodu: Operacje CRUD w Yii2, założenia i inne przykłady w dokumentacji: Active Record Query Builder Tworzenie (create): Utworzenie i zapisanie wartości modelu: $model = new […]

Dostęp do serwisu dla danego IP przez proxy

Przenosiłem serwis na nowy serwer, gdzie był dostęp tylko dla wybranych IP. Po przeniesieniu „zonk” nikt nie ma dostępu, okazało się ze po drodze jest małe proxy :\ … W necie, po małym grzebaniu znalazło się rozwiązanie, wykorzystanie warunku „SetEnvIF” w htaccess’ie Kawałek kodu: order deny,allow deny from all SetEnvIF X-Forwarded-For „3.4.5.6” AllowIP SetEnvIF X-Forwarded-For […]

Trochę automatyzacji

Codziennie powtarza się jakieś czynności, niektóre są „trochę upierdliwe” aż do bólu. Szczególnie gdy mamy „czarne pudełko”, którego za bardzo nie możemy ruszyć i co jakiś czas się zawiesza. Robi się monotonie te same czynności co jakiś czas, ale od czego maszyna i czemu nie może tego robić sama. Nie trzeba pisać wielkich programów, wystarczy […]

Hotcopy wszystkich projektów w repozytorium SVN

Mały skrypt bash’a do wykonywania „gorącej kopii” wszystkich projektów w repozytorium SVN’a. Kopiowane są do innego katalog. „Jak wiadomo ludzi dzielimy na tych co robię kopię bezpieczeństwa oraz na tych którzy jeszcze tego nie robią”. #! /bin/bash   # # Constans # REPOS_BASE="/srv/svn/repository" BACKUP_DIR="/mnt/sdc1/_Backup/SVN" SVNADMIN_CMD="/usr/bin/svnadmin"   # # Backup all directory in repo dir # […]

© 2017 Jarosław Czub DevBlog — Powered by WordPress