본문 바로가기

개발 관련 지식

[안드로이드] GCM, FCM 차이점 * GCM, FCM 차이점 안녕하세요 송군함대입니다.오늘은 구글 PUSH 메시지 기능인 GCM, FCM 의 차이점에 대해 알아보도록 하겠습니다. 먼저, GCM과 FCM이 어떤 것인지 간략하게 알아보겠습니다. - GCM : Google Cloud Messaging 의 약자 로 Android & IOS 를 지원한다. 구글에서 제공하는 서버와 클라이언트 APP 간에 PUSH 메시지를 보낼수 있는 서비스다. - FCM : Firebase Cloud Messaging 의 약자로 GCM의 새로운 버전이다. Android & IOS & Mobile Web 등의 다양한 플랫폼을 모두 지원한다. FCM 이 생겨나게된 이유는 위에 Mobile Web 의 중요도가 높아짐에 따라 모든 Mobile Application 만이 .. 더보기
[오라클] 대용량 insert 문 처리 시 주의사항(rollback 문제도 포함) 보호되어 있는 글입니다. 더보기
[코르도바] 안드로이드 스튜디오 3.0 업데이트 후 에러(declares a dependency from configuration 'debugCompile' to configuration 'debug' which is not declared in the descriptor for project :CordovaLib.) * 안드로이드 스튜디오 3.0 업데이트 후 에러 (declares a dependency from configuration 'debugCompile' to configuration 'debug' which is not declared in the descriptor for project :CordovaLib.) 안녕하세요 송군함대입니다^-^/ 정말 오랜만에 포스팅을 하는데요.. 그동안 바쁘게 지내오면서 포스팅에 소홀했었네요.. 다시 정리하던 습관을 가져와볼까 합니다~! 오늘은 최근에 시작하게 된 코르도바를 공부하던 중, 발생된 에러에 대해 간단히 정리해보겠습니다. 코르도바에 대한 내용도 추후 업데이트할 예정입니다.. (과연, 지킬 수 있을지는 모르겠지만 노력해보겠습니다~^-^;) - 에러 발생 : 소스 .. 더보기
[알티베이스] 계정 생성 및 기본 권한 * 계정 생성 및 기본 권한 create user song identified by song123; : 일반 사용자의 경우 초기에 다음의 권한을 기본적으로 부여된다.- CREATE SESSION- CREATE TABLE- CREATE SEQUENCE- CREATE PROCEDURE- CREATE VIEW- CREATE TRIGGER- CREATE DATABASE LINK- CREATE SYNONYM 더보기
[C언어] 현재 시간의 밀리세컨드 구하는 방법 * 현재 시간의 밀리세컨드 구하는 방법 [밀리세컨드 구하는 방법]#include #include void GetMilSecStr(char *dt){ struct timeb itb; struct tm *lt; ftime(&itb); lt = localtime(&itb.time); memset(dt , 0x00 , sizeof(dt)); // format : YYMMDDhhmmssuuuuuu sprintf(dt, "%04d%02d%02d%02d%02d%02d%03d" , lt->tm_year + 1900, lt->tm_mon + 1, lt->tm_mday , lt->tm_hour, lt->tm_min, lt->tm_sec , itb.millitm);} 더보기
[안드로이드] SQLite 사용 시 onCreate, onUpgrade 호출 시점 * SQLite 사용 시 onCreate, onUpgrade 호출 시점 [예시] public class MyDB extends SQLiteOpenHelper{ public MyDB(Context context) { // 생성자 함수 super(Context context, String name, CursorFactory factory, int version); } public void onCreate(SQLiteDatabase db){ // onCreate 함수 } public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){ // onUpgrade 함수 }} 1. 생성자 함수 호출: MyDB myDB = new MyDB(this);=.. 더보기
[알티베이스] 프로시저(PROCEDURE) 사용 방법 * 프로시저(PROCEDURE) 사용 방법 안녕하세요 송군함대입니다~!^-^/간만에 포스팅을 하게 되었네요..ㅎㅎ(요즘 너무 게을러진 듯..)오늘 포스팅할 내용은 알티베이스에서 프로시저를 사용하는 방법에 대해서 알아볼까 합니다. [프로시저 문법]CREATE OR REPLACE PROCEDURE [프로시저명]ISBEGIN declare cursor [커서명] is [select 문] [변수명] [변수타입]; begin open [커서명]; loop fetch [커서명] into [변수명]; exit when [커서명]%notfound; [SQL문] end loop; close [커서명]; end;END;/ [프로시저 예제]: test_song 테이블에서 t_num 을 조회하여 t_num_list 에 담고,.. 더보기
[알티베이스] 동시 접속 가능 세션 수 설정(MAX_CLIENT) * 동시 접속 가능 세션 수 설정(MAX_CLIENT) - MAX_CLIENT(altibase.properties 파일) : 동시 접속 가능 세션 최대 수(default 1000)=> 적용하기 위해서는 해당 설정값을 변경 후 ALTIBASE 를 재기동해줘야 한다. - MAX_CLIENT 설정값의 최대값 : 65535 (JOB_THREAD_COUNT 포함)=> 커널 파라미터의 file descriptor 도 충분히 늘려주어야 한다.=> 해당 값에 따라 시스템 영향도는 없으며 실제 동시 처리가 얼마나 발생하느냐가 부하와 상관이 있다.=> 세션 또는 동시 처리가 많아지면 CPU, 메모리, 네트워크 등의 사용량이 많아지면서 부하도 증가할 것이다.(시스템 사양에 의존적)=> 해당 값의 권장량은 5000~10000.. 더보기
[알티베이스] TRX_UPDATE_MAX_LOGSIZE ERROR(ERR-11118) 해결 방법 * TRX_UPDATE_MAX_LOGSIZE ERROR(ERR-11118) 해결 방법 에러 메세지>: UPDATE 트랜젝션을 진행할 경우, LOGSIZE 가 설정된 TRX_UPDATE_MAX_LOGSIZE 를 넘어갈 때 발생하는 에러[ERR-11118 : The update log size '10486076' is bigger than TRX_UPDATE_MAX_LOGSIZE '10485960'] 해결 방안>: 현재 세션에 대해서 TRX_UPDATE_MAX_LOGSIZE 를 변경해준다. 1. 세션의 설정 값 변경alter session set TRX_UPDATE_MAX_LOGSIZE = 262144000; ALTER SESSION SET TRX_UPDATE_MAX_LOGSIZE = [사이즈 크기]; 2... 더보기
[오라클] 접속 session 및 process 확인 쿼리문 * 접속 session 및 process 확인 쿼리문 SELECT * FROM V$Resource_limit where resource_name in ('processes', 'sessions'); processes : 프로세스 수sessions : 세션 수 CURRENT_UTILIZATION : 현재 접속 수MAX_UTILIZATION : 오라클 기동 시점부터 지금까지 최대 접속 수INITIAL_ALLOCATION : init.ora 파라메터에서 설정한 수치 더보기